Конспект темы по алгоритмам и структурам данных
Структурированный конспект темы алгоритмов: определение, сложность, реализация, типичные ошибки.
Пример результата
Тема: Бинарный поиск 1. Поиск элемента в отсортированном массиве делением интервала пополам. 2. Когда: 1) частые поиски в редко меняющихся данных, 2) поиск точки перехода, 3) поиск ближайшего значения. 3. O(log n) по времени, O(1) по памяти. 4. def bin_search(arr, x): lo, hi = 0, len(arr) - 1 while lo <= hi: mid = (lo + hi) // 2 if arr[mid] == x: return mid if arr[mid] < x: lo = mid + 1 else: hi = mid - 1 return -1 5. (lo + hi) // 2 может переполнить int в Java — пиши lo + (hi - lo) // 2. 6. Задача: найти первое вхождение x. Подсказка: при arr[mid] == x продолжай искать слева.