Sobes.tech
Junior — Middle

Wat is de tijdcomplexiteit van de zoekoperatie van een element in een lijst geïmplementeerd via een slice?

sobes.tech AI

Antwoord van AI

In Go is een slice een dynamische array die elementen opslaat in een sequentieel geheugengebied. Het zoeken van een element op waarde in een slice vereist het doorlopen van de elementen, omdat de slice niet op waarde wordt geïndexeerd.

De tijdscomplexiteit van de bewerking om een element in een slice te zoeken is dus O(n), waarbij n het aantal elementen in de slice is.

Voorbeeld van het zoeken naar een element:

func contains(slice []int, val int) bool {
    for _, item := range slice {
        if item == val {
            return true
        }
    }
    return false
}

In het ergste geval moet je alle elementen controleren.