Назад к вопросам
VK
Middle
4
Как работает бинарный поиск в отсортированном списке?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Бинарный поиск — это алгоритм поиска элемента в отсортированном списке с логарифмической сложностью O(log 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 // элемент не найден
}