Sobes.tech
Junior

Wat is de complexiteit van het zoeken naar een element in een Swift-array?

sobes.tech AI

Antwoord van AI

In het slechtste geval (element niet gevonden of aan het einde) is lineair, O(n), waarbij n het aantal elementen in de array is.

Bij gebruik van binaire zoekopdracht op een gesorteerde array — logaritmisch, O(log n).

// Lineaire zoekopdracht
let array = [1, 5, 2, 8, 3]
if array.contains(8) {
    // Element gevonden. In het slechtste geval zijn alle elementen gecontroleerd.
}

// Binaire zoekopdracht op een gesorteerde array
let sortedArray = [1, 2, 3, 5, 8]
// De implementatie vereist extra stappen of het gebruik van een algoritme
// Bijvoorbeeld, via de binarySearch() methode voor gesorteerde collecties in Swift 5.3+
// sortedArray.binarySearch(8)