Back to questions
Junior — Middle
54
Объясните алгоритм бинарного поиска и его принцип действия
Answer from AI
sobes.tech AI
Бинарный поиск — это алгоритм поиска элемента в отсортированном массиве. Принцип действия:
- Определяется средний элемент массива.
- Если искомый элемент равен среднему, поиск завершён.
- Если искомый элемент меньше среднего, поиск продолжается в левой половине массива.
- Если больше — в правой половине.
- Процесс повторяется рекурсивно или итеративно, пока элемент не найден или не останется элементов для проверки.
Пример на Python:
def binary_search(arr, target):
left, right = 0, len(arr) - 1
while left <= right:
mid = (left + right) // 2
if arr[mid] == target:
return mid
elif arr[mid] < target:
left = mid + 1
else:
right = mid - 1
return -1
# Использование
arr = [1, 3, 5, 7, 9]
print(binary_search(arr, 5)) # Выведет индекс 2
Бинарный поиск эффективен благодаря уменьшению области поиска вдвое на каждом шаге, что даёт сложность O(log n).