Sobes.tech
Middle

Care este complexitatea căutării binare și de ce?

sobes.tech AI

Răspuns de la AI

Complexitatea căutării binare este O(log n), unde n reprezintă numărul de elemente din array-ul sortat. Acest lucru se datorează faptului că, la fiecare pas, algoritmul împarte zona de căutare în două, eliminând jumătate din elemente care nu pot conține valoarea căutată. Astfel, numărul de operații crește logaritmic în raport cu dimensiunea datelor de intrare.

Exemplu în Go:

func binarySearch(arr []int, target int) int {
    left, right := 0, len(arr)-1
    for left <= right {
        mid := left + (right-left)/2
        if arr[mid] == target {
            return mid
        } else if arr[mid] < target {
            left = mid + 1
        } else {
            right = mid - 1
        }
    }
    return -1 // elementul nu a fost găsit
}