bisect

Модуль bisect обеспечивает возможность поддержания списков в отсортированном состоянии. В своей работе он опирается в основном на использование алгоритма двоичного поиска.

bisect.bisect(list, item[, low[, high]])
Параметры:
  • low – индекс начала области поиска списка
  • hight – индекс конца области поиска списка

Возвращает индекс в списке, куда следует вставить значение, чтобы сохранить этот список в отсортированном порядке. Если значение уже присутствует в списке, возвращаемый индекс всегда будет правее существующего элемента списка.

bisect.bisect_left(list, item[, low[, high]])
Параметры:
  • low – индекс начала области поиска списка
  • hight – индекс конца области поиска списка

Возвращает индекс в списке, куда следует вставить значение, чтобы сохранить этот список в отсортированном порядке. Если значение items уже присутствует в списке, возвращаемый индекс всегда будет левее существующего элемента списка.

bisect.bisect_right(list, item[, low[, high]])

То же, что и функция bisect()

bisect.insort(list, item[, low[, high]])
Параметры:
  • low – индекс начала области поиска списка
  • hight – индекс конца области поиска списка

Вставляет элемент в список с учетом порядка сортировки. Если значение item уже присутствует в списке, новый элемент вставляется правее его.

bisect.insort_left(list, item[, low[, high]])
Параметры:
  • low – индекс начала области поиска списка
  • hight – индекс конца области поиска списка

Вставляет элемент в список с учетом порядка сортировки. Если значение item уже присутствует в списке, новый элемент вставляется левее его.

bisect.insort_right(list, item[, low[, high]])

То же, что и insort().