Sobes.tech
Junior

Каква е сложността на търсенето на елемент в масив в Swift?

sobes.tech AI

Отговор от AI

В най-лошия случай (елементът не е намерен или е в края) е линейно, O(n), където n е броят на елементите в масива.

При използване на двоично търсене в сортиран масив — логаритмично, O(log n).

// Линейно търсене
let array = [1, 5, 2, 8, 3]
if array.contains(8) {
    // Елементът е намерен. В най-лошия случай са проверени всички елементи.
}

// Двоично търсене в сортиран масив
let sortedArray = [1, 2, 3, 5, 8]
// Реализацията изисква допълнителни стъпки или използване на алгоритъм
// Например, чрез метода binarySearch() за сортирани колекции в Swift 5.3+
// sortedArray.binarySearch(8)