Sobes.tech
Junior — Middle

Kuidas pääseda juurde Map andmestruktuuride elementidele, kasutades hash-funktsiooni?

sobes.tech AI

Vastus AI-lt

Go kehas andmestruktuur Map on rakendatud hash-tabelite põhjal. Kui pääsete elemendile juurde võtme kaudu, toimub järgmist:

  1. Võti läbib hash-funktsiooni, mis arvutab hash-koodi.
  2. Hash-kood kasutatakse selleks, et määrata kasti (bucket) indeks massiivis.
  3. Kastis otsitakse elementi, mille võti vastab (tavaliselt võrdlusega võtmeid).

See tagab amortiseeritud juurdepääsuaega, mis on lähedane O(1).

Näide mapi kasutamisest Go keeles:

m := make(map[string]int)
m["apple"] = 5
value := m["apple"] // value == 5

Sisemiselt arvutatakse võtme "apple" jaoks hash, mis aitab leida vajaliku elemendi.