Встречается на 1% собеседований по Python
Какие знаешь алгоритмы поиска
В Python распространены несколько алгоритмов поиска:
Линейный поиск
Простейший алгоритм, перебирает элементы последовательно.
python
def linear_search(arr, target):
for i, item in enumerate(arr):
if item == target:
return i
return -1Бинарный поиск
Работает на отсортированных массивах, делит пополам на каждом шаге.
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Поиск в хеш-таблицах (dict)
O(1) в среднем случае благодаря хешированию.
Также существуют специализированные алгоритмы:
- Интерполяционный поиск (для равномерно распределенных данных)
- Поиск Фибоначчи (вариант бинарного)
- Троичный поиск (для нахождения экстремумов)
Выбор зависит от структуры данных и требований к скорости/памяти.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы