Встречается на собеседованиях • сегодня
Какие знаешь алгоритмы поиска
В 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
интервью вопросы и ответы