Бинарный поиск
Ищем быстро в отсортированных данных, деля диапазон пополам.
Hook
Ищешь книгу в алфавитном каталоге: открыл середину, понял в какую половину идти, повторил.
Concept
Термины: list, dictionary, loop, function — пишем по-английски, объясняем по-русски.
Бинарный поиск работает только на отсортированных данных.
Шаги:
1) взять середину;
2) сравнить с целью;
3) отбросить половину диапазона.
Сложность: O(log n).
Практика
Задание 1: укажи обязательное условие для бинарного поиска.
data = "отсортирован"
print(data)
Заполни пропуски в коде в своей тетради/редакторе. Ключевые ответы: отсортирован.
Задание 2: заполни формулу индекса середины.
mid = (left + right) // 2
Проверь себя: 2.
Сборка: мини-проект
Напиши функцию binary_search(scores, target) для отсортированного списка уровней игроков.
Комбинируем текущую тему с предыдущими навыками.
Reflection
Ты освоил ускоренный поиск и ключевую идею «уменьшаем задачу вдвое».