Sobes.tech
Junior — Middle

Ar įmanoma įgyvendinti duomenų struktūrą Set Go kalboje?

sobes.tech AI

Atsakymas iš AI

Go kalboje nėra įmontuotos duomenų struktūros Set, tačiau ją galima įgyvendinti naudojant žemėlapį (map) su raktais norimo tipo ir reikšmėmis bool arba tuščia struktūra struct{}.\n\nPavyzdys, kaip įgyvendinti eilutės rinkinį:\n\ngo\npackage main\n\nimport "fmt"\n\nfunc main() {\n set := make(map[string]struct{})\n\n // Pridėti elementus\n set["apple"] = struct{}{}\n set["banana"] = struct{}{}\n\n // Patikrinti, ar elementas yra\n if _, exists := set["apple"]; exists {\n fmt.Println("obuolys yra rinkinyje")\n }\n\n // Pašalinti elementą\n delete(set, "banana")\n}\n\n\nNaudojant tuščią struktūrą struct{} vietoj bool taupo atmintį, nes struct{} užima 0 baitų.