Junior — Middle
Hatékonyan lehet-e hash-táblát használni egy tömb vagy lista egyedi elemeinek meghatározására?
sobes.tech MI
Válasz az MI-től
Igen, egy hash-tábla (Go-ban map) hatékonyan használható az egyedi elemek meghatározására egy tömbben vagy listában. Az ötlet az, hogy végigmegyünk az összes elemen, és hozzáadjuk őket a maphez kulcsként. Mivel a map kulcsai egyediek, ez gyorsan lehetővé teszi a duplikált elemek szűrését.
Példa Go-ban:
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
}
Ez a módszer O(n) időben működik, ahol n az elemek száma, és sokkal hatékonyabb, mint a beágyazott ciklusok O(n²)-vel.