Рубрики
Без рубрики

Очередь кучи в Python

Очередь приоритета представлена структурой данных кучи. Это доступно в Python через «Кучу … Помечено Python, куча, функции.

А Очередная очередь представлено структурой данных кучи. Это доступно в Python через “Heapq” модуль.

В Python свойство этой структуры данных состоит в том, что самая маленькая из элементов кучи накапливается каждый раз (Min Heap). Структура кучи сохраняется в то время как компоненты являются переехал или выскочил Отказ

Каждый раз, Куча [0] Элемент возвращает наименьший элемент.

Давайте посмотрим на некоторые важные Операции кучи :

HeaPify (утечка) : – потенциал преобразуется в структуру данных кучи, используя эту функцию. I.e. в Куча порядок Отказ

Heappush (куча, эль) : – Эта функция вставляет элемент, указанный в аргументах в кучу. Заказ меняется, чтобы сохранить Структура кучи нетронутый.

Heappop (куча) : – Эта функция используется для Удалить самый маленький элемент из кучи и вернуть его. Заказ изменен, чтобы сохранить структуру кучи навязчивой.

# Python code to demonstrate working of
# heapify(), heappush() and heappop()

# importing "heapq" to implement heap queue
import heapq

# initializing list
li = [5, 7, 9, 1, 3]

# using heapify to convert list into heap
heapq.heapify(li)

# printing created heap
print ("The created heap is : ",end="")
print (list(li))

# using heappush() to push elements into heap
# pushes 4
heapq.heappush(li,4)

# printing modified heap
print ("The modified heap after push is : ",end="")
print (list(li))

# using heappop() to pop smallest element
print ("The popped and smallest element is : ",end="")
print (heapq.heappop(li))

Вывод :

Созданная куча: [1, 3, 9, 7, 5] Модифицированная куча после толчка: [1, 3, 4, 7, 5, 9] Выскоченный и самый маленький элемент: 1

Оригинал: “https://dev.to/vish/heap-queue-in-python-3jj4”