Встречается на 1% собеседований по Python
Какие структуры данных выберешь, если требуется быстрый поиск
Для быстрого поиска в Python оптимальны:
- Множества (set) и словари (dict) — используют хеш-таблицы, поиск за O(1).
Пример:pythondata = {1, 2, 3} # set if 2 in data: # O(1) print("Found")
- Сортированные списки с бинарным поиском — O(log n).
Пример:pythonimport bisect data = [1, 2, 3, 4] idx = bisect.bisect_left(data, 3) # O(log n)
Выбор зависит от контекста:
- set/dict — если важен порядок вставки (Python 3.7+ сохраняют его) и частые проверки наличия.
- bisect — если данные уже отсортированы или нужен доступ по индексу.
Для сложных структур (например, поиск по диапазону) используют двоичные деревья (библиотеки bintrees, sortedcontainers).

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