Min and Max Heap implementation in Python.
Project description
pbz-heap
Since no max heap seems to exist for Python, here is a Min and Max Heap implementation.
I just stood there, dumbfounded that there is no Max Heap for Python anywhere on the internet. Seriously? In 2020? If you can find one, open an Issue and I'll check it out.
Performance
Absolutely no claims are made about the performance of this Min/Max Heap implementation. I would just be glad that it exists at all ;)
That said, even the Python 3.8 standard library heap is implemented in pure Python.
Usage
# Min Heap
h = MinHeap([4, 5, 2, 1, 9, 10])
print(h.pop(), '==', 1)
print(h.pop(), '==', 2)
print(h.pop(), '==', 4)
# Max Heap
h = MaxHeap([4, 5, 2, 1, 9, 10])
print(h.pop(), '==', 10)
print(h.pop(), '==', 9)
print(h.pop(), '==', 5)
Implementation Details
Yes, yes, I know I just wraped the standard library heapq
. That is, after all,
the officially accepted max heap data
structure for Python.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.