Junior — Middle
Kako je implementirana struktura podataka map za skladištenje i pristup parovima ključ-vrednost unutar sistema?
sobes.tech АИ
Одговор од АИ
U jeziku Go, struktura podataka map implementirana je kao tabela heša koja omogućava brz pristup vrednostima putem ključeva. Kada se doda par ključ-vrednost, ključ se hešira, a heš određuje indeks u nizu kanti gde se vrednost čuva.
Glavne tačke implementacije:
- Koristi se otvorena adresacija sa lančanim listama za rešavanje kolizija.
- U slučaju kolizija, elementi se čuvaju u povezanim listama unutar kanti.
- Kada se poveća broj elemenata, vrši se reorganizacija (rehash) radi održavanja performansi.
Primer korišćenja mape u Go:
m := make(map[string]int)
m["apple"] = 5
value, exists := m["apple"]
if exists {
fmt.Println("Vrednost za 'apple':", value)
}