Diskuze: nečastější prvek
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 5 zpráv z 5.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Ahoj,
myslim ze neexistuje, ale tak napsat to neni slozite. Udelas si pole, kde kazdy prvek bude drzet pocet vyskytu prvku v kontejneru, pak prolezes kontejner, spocitas a pak prolezes znovu pole a podivas se co se vyskytlo nejcasteji. Pokud kontejner bude obsahovat nejaky slozitejsi datovy typ tak misto pole pouzij hash mapu a u kazdeho prvku spocitej hash a ukladej pocet vyskytu pod hashem.
Druhou možností (ale nemusí ti vyhovovat) , jak tento problém řešit, je použít některý z kontejnerů pro ukládání dvojic (klíč;hodnota). Jako klíč budeš ukládat svoje prvky, jako hodnoty číslo udávající vždy počet prvku-klíče vedoucího na danou hodnotu.
Nemělo by to být naopak?
klíč - počet prvků
hodnota - ukládání svých prvků.
Map automaticky třídí hodnoty od nejmenší po největší podle klíče, tak
potřebuju zadat množství do klíče a největší počet bude na posledním
místě.
Ale dík za tip.
V mém návrhu není mapa používána na to, aby ti vrátila nejčastějí prvek, ale pro rychlé zjištění, zda prvek ve vstupním poli je vícekrát, tzn. můžu snadno počítat množství výskytů. Tohle bude podle mě problém pro tvoje použití mapy.
Zobrazeno 5 zpráv z 5.