Встречается на собеседованиях • сегодня

Расскажи принцип работы двоичного поиска

Двоичный поиск — это алгоритм поиска элемента в отсортированном массиве, который работает за время O(log n). Он делит массив пополам, сравнивает искомый элемент с центральным, и в зависимости от результата продолжает поиск в левой или правой половине.

Алгоритм:

  1. Находим середину массива.
  2. Если элемент в середине равен искомому — возвращаем индекс.
  3. Если элемент меньше искомого — повторяем поиск в правой половине.
  4. Если элемент больше — в левой.
  5. Если границы сходятся, а элемент не найден — возвращаем -1.

Пример на Python:

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

Особенности:

  • Работает только с отсортированными массивами.
  • Эффективен для больших данных.
  • Может быть реализован рекурсивно или итеративно.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы