Junior — Middle
Ako je implementovaná dátová štruktúra map na ukladanie a prístup k párům kľúč-hodnota v systéme?
sobes.tech AI
Odpoveď od AI
V jazyku Go je dátová štruktúra map implementovaná ako hash tabuľka, ktorá zabezpečuje rýchly prístup k hodnotám podľa kľúčov. Pri pridávaní páru kľúč-hodnota sa kľúč hash-uje a hash určuje index v poli vedier, kde je hodnota uložená.
Hlavné body implementácie:
- Používa sa otvorená adresácia s reťazcami na riešenie kolízií.
- Pri kolíziách sú prvky uložené v prepojených zoznamoch v rámci vedier.
- Pri raste počtu prvkov dochádza k reorganizácii (rehash), aby sa zachovala výkonnosť.
Príklad použitia mapy v jazyku Go:
m := make(map[string]int)
m["apple"] = 5
value, exists := m["apple"]
if exists {
fmt.Println("Hodnota pre 'apple':", value)
}