Встречается на собеседованиях • сегодня

Какими способами можно найти значение в отсортированном списке

В Python есть несколько эффективных способов поиска в отсортированном списке:

  1. Бинарный поиск - оптимальный способ для отсортированных данных (O(log n)):
python
import bisect
index = bisect.bisect_left(sorted_list, value)
if index != len(sorted_list) and sorted_list[index] == value:
    print(f"Found at index {index}")
  1. Встроенный in оператор - простой, но линейный поиск (O(n)):
python
if value in sorted_list:
    print("Value exists")
  1. Индекс через index() - также линейный поиск:
python
try:
    index = sorted_list.index(value)
except ValueError:
    print("Not found")

Для больших списков всегда предпочтительнее бинарный поиск через bisect. Для небольших данных (до ~100 элементов) разница незначительна.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы