Junior — Middle
90
Erklären Sie das Funktionsprinzip des binären Suchalgorithmus und in welchen Fällen er verwendet wird.
Antwort von AI
sobes.tech KI
Алгоритм бинарного поиска работает на отсортированном массиве или списке. Идея в том, чтобы каждый раз делить область поиска пополам и сравнивать искомый элемент с элементом в середине. Если искомый элемент меньше среднего, поиск продолжается в левой половине, если больше — в правой. Так повторяется, пока элемент не найден или область поиска не станет пустой.
Используют бинарный поиск, когда нужно быстро найти элемент в отсортированной структуре данных. Его сложность — O(log n), что намного эффективнее линейного поиска для больших массивов.
Пример на 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, 7)) # Выведет 3