Menü
Avatar von Markus Franke
  • Markus Franke

1 Beitrag seit 25.06.2019

Aber ist das denn nicht trotzdem erstaunlich?

Der Zugriff auf einen geordneten Container ist langsamer als auf einen ungeordneten? Ich hätte das eher andersherum erwartet.

Der Containerzugriff

for (const auto& name: names) m[name];

führt ja zu einer Suche des Schlüssels auf der Datenstruktur und das müsste doch deutlich schneller gehen wenn der Container sortiert ist. (Stichwort: binäre Suche auf einem eindimensionalen sortierten Feld)

Das Einfügen in einen sortierten Container ist dann natürlich wieder teurer weil man ja erst mal die Stelle finden muss an der das neue Element eingefügt werden soll. Dort hätte ich dann in der Tat erwartet, dass std::map langsamer ist als std::unordered_map.

Das Posting wurde vom Benutzer editiert (25.06.2019 08:27).

Bewerten
- +
Anzeige