Junior — Middle
Mis on aja keerukus otsida elementi võtme järgi kaardistandmestruktuuris?
sobes.tech AI
Vastus AI-lt
Go keeles andmestruktuur map on rakendatud kui hajutustabel. Keskmine aja keerukus elemendi otsimisel võtme järgi on O(1) — konstantne aeg.
See tähendab, et juurdepääs elemendile võtme järgi toimub väga kiiresti, sõltumata kaardi suurusest.
Kuid halvimates tingimustes (näiteks palju kokkupõrkeid hash-ides) võib keerukus halveneda O(n)-ni, kus n on elementide arv, kuid sellised olukorrad on haruldased heade hash-funktsioonide korral.
Näide mapi kasutamisest Go keeles:
m := make(map[string]int)
m["võti"] = 42
value, ok := m["võti"]
if ok {
fmt.Println("Väärtus:", value)
}