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