Junior — Middle
Mis on tühja andmestruktuuri peamine eesmärk?
sobes.tech AI
Vastus AI-lt
Tühi struktuur Go-s (struct{}) ei sisalda välju ja võtab 0 bait mälu. Selle struktuuri peamine eesmärk on toimida märgise või lipuna, kui oluline on ainult see fakt, et väärtus eksisteerib, mitte selle sisu. Näiteks kasutatakse seda sageli väärtusena map-is, et rakendada kogumit (set), kus võtmed on kogumi elemendid ja väärtused on tühjad struktuurid, et säästa mälu.
Näide tühja struktuuri kasutamisest kogumi jaoks:
set := make(map[string]struct{})
set[" õun"] = struct{}{}
set[" banaan"] = struct{}{}
if _, exists := set[" õun"]; exists {
fmt.Println("Õun on kogus")
}
Sellisel viisil aitab tühi struktuur tõhusalt esitada kogusid ilma duplikaatandmeteta.