Angenommen, ich möchte Daten mit einer Zeichenfolge als Schlüssel zuordnen. Welchen Behälter sollte ich gewählt haben, map
oder unordered_map
? unordered_map
nimmt mehr Speicher auf, also nehmen wir an, Speicher ist kein Problem, und die Sorge ist Geschwindigkeit.Wie wähle ich zwischen map und unordered_map?
unordered_map
sollte im Allgemeinen die durchschnittliche Komplexität von O (1) mit dem schlechtesten Fall von O (n) angeben. In welchen Fällen würde es zu O (n) kommen? Wann wird ein map
effizienter als unordered_map
? Kommt es vor, wenn n klein ist?
Angenommen, ich würde STL unordered_map
mit dem Standard Haser Vs. Karte. String ist der Schlüssel.
Wenn ich über die Elemente iteriere anstatt auf ein einzelnes Element jedes Mal zuzugreifen, sollte ich map
bevorzugen?
Müssen Elemente im Mapping sortiert werden? –
Welche Implementierung von 'unordered_map' verwendet mehr Speicher? –
Sie haben in einer Hash-Tabelle immer einen Speicher-Overhead, obwohl dieser normalerweise vernachlässigbar ist. – ypnos