Junior — Middle
Hoe wordt de tijdcomplexiteit van toegang tot de elementen in een interne array in een dynamische slice bepaald?
sobes.tech AI
Antwoord van AI
In Go heeft toegang tot slice-elementen via index een tijdcomplexiteit van O(1), omdat een slice een structuur is die een pointer bevat naar een intern array, samen met de lengte en capaciteit. Bij toegang tot een element wordt direct toegang verkregen tot het array-element via een offset, wat in constante tijd gebeurt.
Voorbeeld:
s := []int{10, 20, 30, 40}
fmt.Println(s[2]) // Snelle toegang tot het element met index 2
Dus, ongeacht de grootte van de slice, is toegang tot een element via index altijd efficiënt en afhankelijk van de lengte van de slice niet.