Русский
Открыть в Telegram

Пост Очередь с приоритетом — это структура данных, которая поддерживает две операции: добавление элемента и извлечение минима…

6 июля 2026
Б
Библиотека Python разработчика | Книги по питону
Очередь с приоритетом — это структура данных, которая поддерживает две операции: добавление элемента и извлечение минимального из всех ранее добавленных элементов. Одной из самых распространённых реализаций очереди с приоритетом является бинарная куча. Это полное бинарное дерево со следующим свойством: ключ, хранящийся в каждом узле, меньше или равен (≤) ключам в дочерних узлах. Минимум всех элементов находится в корне такого дерева. 1 3 7 5 4 9 8 15 16 17 18 19 В бинарной куче сложность операций вставки и извлечения составляет O(log n). Обычный способ хранения полного бинарного дерева в памяти — это массив, где дочерние элементы для x[i] находятся в x[2*i+1] и x[2*i+2]. [1, 3, 7, 5, 4, 9, 8, 15, 16, 17, 18, 19] В Python нет бинарной кучи в виде класса, но предоставляется ряд функций, которые позволяют использовать список как бинарную кучу. Эти функции находятся в модуле heapq. In [1]: from heapq import * In [2]: heap = [3,2,1] In [3]: heapify(heap) In [4]: heap Out[4]: [1, 2, 3] In [5]: heappush(heap, 0) In [6]: heap Out[6]: [0, 1, 3, 2] In [7]: heappop(heap) Out[7]: 0 In [8]: heap Out[8]: [1, 2, 3] 📲 Мы в MAX 👉@BookPython
2 · 1.4K ·

Рядом в ленте

ББиблиотека Python разработчика | Книги по питону>>> exit Use exit() or Ctrl-D (i.e. EOF) to exit Вы когда-нибудь задумывались, почему при попытке выйти из интерактивного Python с помощью простого exit или quiББиблиотека Python разработчика | Книги по питонуЕсли вы хотите перехватить как IndexError, так и KeyError, вы можете и должны использовать LookupError, их общего предка. Это оказалось полезным при доступе к с
это сообщение
ББиблиотека Python разработчика | Книги по питонуФункция enumerate Эта встроенная функция снабжает циклы счётчиком. Возвращает генераторный объект, который имеет метод, вызываемый встроенной функцией next: на ББиблиотека Python разработчика | Книги по питонуВредные советы python разработчику l=[['a', 'b', 'c'], ['1', '2'], ['#']] sum(l, []) В Python можно выпрямить вложенные списки с помощью... функции sum(). Вот к
ББиблиотека Python разработчика | Книги по питонуБиблиотека Python разработчика | Книги по питону@BookPython · канал · Технологии
17 954подписчиков552средний охват поста
Лента площадки Открыть в Telegram

Открытая публичная лента из поискового индекса ChatCrawler — «Google по публичному Telegram»; обновляется по мере обхода площадки. Время — UTC.

Только публичный контент, официальный API Telegram. О проекте · Вопросы · Границы индекса · Убрать страницу из выдачи · Каталог · Поиск · Как мы считаем