Ahoj, poradil by mi někdo jak na modus ?
Hledal sem všude možně, ale nikde nic :-(
Mám k dispozici dva údaje - počet prvků v poli cisla,
a podle cisla, které obsahuje čísla,
ze kterých potřebuji najít modus ....
Neví někdo ? Díky za odpověď ! ;-)
Fórum › C / C++
Modus v C++ - Jak na něj ?
To Anonym:-):
měls na mysli pole cisla? Zkusím se na to kouknout, ale určitě se zeptej na www.builder.cz, tam ti odpoví rychleji :)a podle cisla, které obsahuje čísla
jj, samozrejme ze pole, preklepnul sem se :)midin píše:#
# To Anonym:-):měls na mysli pole cisla? Zkusím se na to kouknout, ale určitě se zeptej na www.builder.cz, tam ti odpoví rychleji :)a podle cisla, které obsahuje čísla
A čo j na tom ťažke. Keď som dobre pochopil z wikipedie, modus je najopakovanejší prvok v množine.
Ja by som to riešil vektorom dvojprvkových štruktúr, kde jeden prvok bude číslo z množiny a
druhý bude počet takýchto čísel v množine. Potom už len jednoducho prejsť prvok po prvku a zistiť:
- je nový (nie je zapísaný ako typ vo vektore)
- už bol (inkrementovať počet pri type)
a na konci len nájsť typ s maximálnym počtom.
dúfam že som ten modus správne pochopil. Počujem to slovo 1. krát.
jj, moc diky, zkusim, ozvu se ;-)mephi píše:#
# A čo j na tom ťažke. Keď som dobre pochopil z wikipedie, modus je najopakovanejší prvok v množine.#
#Ja by som to riešil vektorom dvojprvkových štruktúr, kde jeden prvok bude číslo z množiny a #
#druhý bude počet takýchto čísel v množine. Potom už len jednoducho prejsť prvok po prvku a zistiť:#
#- je nový (nie je zapísaný ako typ vo vektore)#
#- už bol (inkrementovať počet pri type)#
#a na konci len nájsť typ s maximálnym počtom.#
#dúfam že som ten modus správne pochopil. Počujem to slovo 1. krát.#
#
To mephi:toto je samozřejmě řešní které napadne jako první ale mě ještě napadlo, že pokud ty prvky nejdřív seřadím podle velikosti tak to hledání budu mít poté jednodušší protože mi bude stačit projít ten cyklus jednou a ne v podstatě tolikrát kolik je počet prvků tak jako v tom tvém případě(dalo by se to trochu omezit..).. na setřídění prvků podle velikosti existuje celá řada efektních algoritmů..
2 aleshus: moj program bude mat časovu a pamäťovu zložitost O(N) , teda linearnu, najdi mi triediaci algoritmus s linearnou zlozitosťou a ja ťa navrhnem na nobelovu cenu ;)
To aleshus: Nemohl bys to trochu rozvést? Setřídíš a potom?
To midin: mephi má pravdu můj nápad nic nepřináší špatně jsem si to představil.. to třídění přidělá moc práce.. a navíc těch modusů může být teoreticky jako počtu prvků a to setřídění by mělo smysl pouze pokud by ten modus byl jeden nebo žádný. omlouvám se měl jsem si to lépe promyslet ;) :D
#10 Peter D.
Tak zefektivnit to jde - pokud budeš mít zaručeno, že hodnoty budou maximální hodnoty X, stačí mít pole X prvků a hodnota na indexu K bude počet čísel s hodnotou K.
Pokud by X bylo příliš vysoké, lze použít mapu a tak snížit vyhledávání prvků na N(log n) nebo i nižší (podle implementace mapy).
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Exe jak na něj — založil j1rka
Free pascal - jak na něj — založil Marilyn666
Teplotní čidlo - jak na něj — založil stibi
Adresář klientů - jak na něj? — založil mhubacek
[C#]Hodnocení programu a jak na něj lépe? — založil MartyMcFly1
Moderátoři diskuze