Junior — Middle
Ar efektyviai galima naudoti žemėlapių lentelę unikaliems elementams nustatyti masyve ar sąraše?
sobes.tech AI
Atsakymas iš AI
Taip, žvaigždžių lentelė (Go kalboje tai yra map) gali būti efektyviai naudojama unikaliems elementams nustatyti masyve ar sąraše. Idėja yra pereiti per visus elementus ir pridėti juos kaip raktus į map. Kadangi raktai map'e yra unikalūs, tai leidžia greitai filtruoti pasikartojančius elementus.
Pavyzdys Go kalboje:
func uniqueElements(arr []int) []int {
seen := make(map[int]bool)
var result []int
for _, v := range arr {
if !seen[v] {
seen[v] = true
result = append(result, v)
}
}
return result
}
Šis metodas veikia laike O(n), kur n yra elementų skaičius, ir yra daug efektyvesnis nei įdėtiniai ciklai su O(n²).