Junior — Middle
Kuidas implementida andmestruktuur Set Go keeles?
sobes.tech AI
Vastus AI-lt
Go keeles ei ole sisseehitatud Set tüüpi, kuid seda saab rakendada kasutades kaarti (map) koos võtmetüübiga ja väärtusega bool või tühja struktuuri struct{}. Näiteks, stringide kogumi saab teha järgmiselt:
package main
import "fmt"
func main() {
set := make(map[string]struct{})
// Elementide lisamine
set["apple"] = struct{}{}
set["banana"] = struct{}{}
// Kontroll, kas element on olemas
if _, exists := set["apple"]; exists {
fmt.Println("õun on kogumis")
}
// Elementi kustutamine
delete(set, "banana")
// Elementide läbikäimine
for key := range set {
fmt.Println(key)
}
}
Tühi struktuur struct{} kasutamine säästab mälu, kuna see võtab 0 baiti.