New We are sorting MAX channels into categories and territories. Read the news
Loading image…

Python умеет выполнять бинарный поиск по отсортированному списку без написания алгоритма!



Во многих проектах поиск позиции элемента реализуют вручную через цикл, хотя это уже есть в stdlib и работает за O(log n).
for i, x in enumerate(a):
if x >= target:
break


bisect_left возвращает позицию вставки элемента так, чтобы сохранить порядок сортировки.
bisect_left(a, 5)

Это особенно полезно для задач с индексами вставки, диапазонами, дедупликацией и временными рядами.
a.insert(pos, value)

Можно использовать и как основу для эффективных структур данных без сторонних библиотек.
bisect_right(a, x)

bisect — это встроенный инструмент для логарифмического поиска и вставки в отсортированные структуры без реализации алгоритма вручную.

Python Ready | #совет
Views: 508
Open in MAX Report an inaccuracy

Report an inaccuracy

Describe what needs fixing. If you have a source, add a link.

You are leaving datool.ru

The link leads to an external website. datool.ru is not responsible for its content — check the address before entering passwords or payment details.

Redirecting in 10 s

Go