Junior — Middle
Wie erfolgt der Zugriff auf Elemente in Map-Datenstrukturen unter Verwendung einer Hash-Funktion?
sobes.tech KI
Antwort von AI
In Go sind Datenstrukturen vom Typ Map auf Hash-Tabellen basieren. Beim Zugriff auf ein Element über den Schlüssel passiert Folgendes:
- Der Schlüssel wird durch eine Hash-Funktion geleitet, die einen Hash-Code berechnet.
- Der Hash-Code wird verwendet, um den Index des Buckets im Array zu bestimmen.
- Im Bucket wird nach dem Element mit dem übereinstimmenden Schlüssel gesucht (meist durch Schlüsselvergleich).
Dies gewährleistet eine amortisierte Zugriffszeit nahe O(1).
Beispiel für die Verwendung von Map in Go:
m := make(map[string]int)
m["apple"] = 5
value := m["apple"] // value == 5
Intern wird für den Schlüssel "apple" ein Hash berechnet, um das benötigte Element zu finden.