c++ - unordered_map Komplexität

Muss ich erstellen Sie eine lookup-Funktion, wenn ein (X,Y) - paar entspricht einem bestimmten Z-Wert. Eine wichtige Voraussetzung dafür ist, dass ich brauchen, um es in als in der Nähe der O(1) Komplexität, wie ich kann. Mein plan ist die Verwendung einer unordered_map.

Ich in der Regel verwenden Sie nicht eine hash-Tabelle nachschlagen, wie die lookup-Zeit war nie wichtig für mich. Bin ich richtig in der Annahme, dass, solange ich baute die unordered_map mit keine Kollisionen, mein lookup-Zeit von O(1)?

Meine Sorge ist dann, was die Komplexität wird, wenn dort der Schlüssel nicht vorhanden ist, die in der ungeordneten map. Wenn ich unordered_map::find (): zum Beispiel, um festzustellen, ob ein Schlüssel vorhanden ist, in meinem hash-Tabelle, wie wird es gehen, darum, mir eine Antwort? Tut es eigentlich iteriert über alle Schlüssel?

Ich bin sehr dankbar für die Hilfe.

InformationsquelleAutor user1764386 | 2013-03-18

Schreibe einen Kommentar