Sortierte Struktur?
-
hallo,
würde gern ne sortierte Map habe, welche aber nach prorität sortiert ist!
Priorität | Key | Value
0 "A" 1
0 "B" 3
1 "A" 9
1 "A" 6
2 "C" 5
2 "B" 8wie könnte ich das in kombination mit std:map und std:set /std:list etc. realisieren?
wenn ich dann alle Elemente von "A" haben will sortiert in einer liste nach Prorität!
bisher habe ich es ohne prorität:
std::map< std:string /* Key*/, std:list<UINT> /*Value*/ > DATA;
-
ne entsprechende vergleichsfunktion schreiben und beim konsturktor angeben
-
wieso gibts doch container die automatisch sortieren....
-
den container kannst du auch weiter verwenden. schau dir mal die konstruktoren von std::map an
-
hmm ok.. und was hat std:set für features?
-
Set erlaubt glaubich keine zwei gleichen Objekte.
-
Hallo
std::set ist ebenfalls ein sortierter Container wie std::map, der Unterschied ist das dort der Wert auch gleich der Schlüssel ist
bis bald
akari
-
Der dritte Template-Parameter gibt bei std::map die Sortierung vor (default: std::less<>), bei std::set der zweite.
std::list speichert unsortiert. Kann zB. mit std::sort sortiert werden, auch mit Sortier-Kriterium.
Wenn man doppelte Schlüssel in map und set zulassen will, gibts dafür std::multimap und std::multiset.