Код Junior Бинарный поиск обновлено
Бинарный поиск
Условие
Индекс target в отсортированном массиве, иначе -1.
Примеры
search([-1, 0, 3, 5, 9, 12], 9) // 4
search([-1, 0, 3, 5, 9, 12], 2) // -1
search([], 1) // -1
Как подойти
Определись с инвариантом раз и навсегда: [lo, hi] включительно → while (lo <= hi), сдвиги на mid±1. Половинчатые версии этого и порождают вечные баги.
Подсказки: 2
- Границы включительные, значит условие цикла со знаком равенства.
- mid + 1 и mid - 1, иначе зациклишься.
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.