Бинарный поиск работает за время O(log n), где n — количество элементов в отсортированном массиве. Это достигается за счёт того, что на каждом шаге алгоритм делит область поиска пополам, отбрасывая половину элементов, которые не могут содержать искомое значение.
За сколько работает бинарный поиск?
Бинарный поиск работает за время O(log n), где n — количество элементов в отсортированном массиве.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Бинарный поиск работает за время O(log n), где 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 // элемент не найден
}