häufigstes Element ausgeben.



  • Hallo,

    ich habe ein Vektor (mit einer Klasse), indem mehrere Einträge sind. Es gibt ein paar dei haben einen bestimmten Wert gleich, nennen wir ihn B. Alle Einträge mit den gleichen und meisten B's sollen jetzt ausgegeben werden.

    Wie stell ich das am besten an?
    Danke schon mal!



  • Du könntest den std::vector durchiterieren und jeden Eintrag in eine std::map<B, unsigned int> einfügen, welche die Anzahl Vorkommen zählt. Dann suchst du das maximale B (geht auch im gleichen Schritt).

    Schliesslich wanderst du nochmals durch den std::vector und gibst alle entsprechenden Elemente aus (es sei denn, die Ausgabe-Information wird auch gleich in der Map gespeichert).



  • sortieren und dann durchzählen, ähnlich wie max oder min suche.


Anmelden zum Antworten