Больше никаких разговоров, давайте начнем, но подождите, о чем мы говорили? это была простая шутка, теперь вы находитесь в режиме фокусировки, поэтому я начну говорить, я был на YouTube и увидел фантастическое короткое видео, которое дало мне идею этой статьи, короткое видео было о том, как вы можете получить лучшее местоположение в список, в который необходимо добавить элемент, чтобы сохранить порядок списка, позвольте мне объяснить вам, что на простом примере у вас есть список, отсортированный в порядке возрастания:

[2, 8, 12, 33]

и вы хотите вставить 5 в качестве значения в лучшую позицию в приведенном выше списке и наилучшую позицию должно ли значение 5 находиться в позиции 1, чтобы сохранить наш список в порядке возрастания, поэтому наш список выше станет таким, как показано ниже:

[2, 5, 8, 12, 33]

Итак, вопрос в том, как получить наилучшую позицию «Индекс», в которой должно быть новое значение? простой ответ будет таким: Есть модуль bisect на нашем любимом языке Python, который поможет нам получить лучший индекс для новых значений, которые будут вставлены в упорядоченный список.

Оглавление

  1. Что такое модуль bisect в python?
  2. Простое введение в модуль bisect в python

Что такое модуль bisect в python?

Модуль называется bisect, поскольку он основан на "алгоритме деления пополам". Концепция использования алгоритма деления пополам заключается в нахождении наилучшего индекса, в который новый элемент должен быть вставлен в наш упорядоченный список, и, таким образом, наш упорядоченный список сохраняется в последовательный порядок.

Целью алгоритма Bisect является определение «индекса» позиции в списке, куда необходимо добавить элемент, чтобы сохранить порядок списка.

Простое введение в модуль bisect в python

Для модуля bisect не требуется установка, поскольку он поставляется предустановленным с дистрибутивами Python, и чтобы убедиться, существует ли библиотека или нет, попробуйте импортируйте модуль, затем запустите программу:

import bisect

Главное, что вы должны учитывать, это список должен быть упорядочен перед запуском, чтобы использовать функциональные возможности модуля, теперь давайте начнем с первого примера:

Простой вывод:

The best position to insert 5 in our list = 2
The old list:  [2, 3, 6, 8]
The new list:  [2, 3, 5, 6, 8]

Более удобным методом является использование метода insort, только нам нужно передать два параметра (list, value_to_be_inserted), позвольте мне показать вам простой пример:

Простой вывод:

The old list:  [2, 3, 6, 8]
The new list:  [2, 3, 5, 6, 8]

Самый удачливый человек в этот день — это вы, потому что вы узнали новую концепцию, прошлись по модулю bisect и алгоритму деления пополам и, наконец, вы получили простое введение в модуль bisect в python.

Спасибо за прочтение,

Подробнее о модуле bisect

Актуальные истории, которые вы должны увидеть