А Очередная очередь представлено структурой данных кучи. Это доступно в 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”