Sobes.tech
Junior — Middle

Go dilində Set məlumat strukturu necə həyata keçirilə bilər?

sobes.tech Süni İntellekt

AI-dan cavab

Go dilində daxili Set tipi yoxdur, lakin onu istənilən növ açarları və bool və ya boş struct{} strukturu ilə xəritə (map) istifadə edərək həyata keçirmək olar. Məsələn, sətirlərdən ibarət dəstəni belə yarada bilərsiniz:

package main

import "fmt"

func main() {
    set := make(map[string]struct{})

    // Elementlər əlavə etmək
    set["apple"] = struct{}{}
    set["banana"] = struct{}{}

    // Elementin olub-olmadığını yoxlamaq
    if _, exists := set["apple"]; exists {
        fmt.Println("apple dəstədədir")
    }

    // Elementi silmək
    delete(set, "banana")

    // Elementlər üzərində dövr etmək
    for key := range set {
        fmt.Println(key)
    }
}

Boş struct{} istifadə etmək, bool yerinə yaddaş qənaət edir, çünki 0 bayt tutar.