Sobes.tech
Junior — Middle

Je možné efektívne použiť hashovaciu tabuľku na určenie jedinečných prvkov v poli alebo zozname?

sobes.tech AI

Odpoveď od AI

Áno, hash tabuľka (v Go to je map) môže byť efektívne použitá na určenie unikátnych prvkov v poli alebo zozname. Myšlienka je prejsť všetky prvky a pridať ich ako kľúče do mapy. Keďže kľúče v mape sú jedinečné, umožní to rýchle filtrovanie duplicitných prvkov.

Príklad v Go:

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
}

Tento prístup funguje v čase O(n), kde n je počet prvkov, a je oveľa efektívnejší ako vnorené slučky s O(n²).