Create an empty heap.
compck/heap/comp: forall<a> (pairing-heap<a>) -> ((a, a) -> order)
determines the order of elements in the heap.
Remove the minimum element from a heap. Do nothing if the given heap is empty.
Add a value to a heap.
Check whether a heap is empty.
Combine two heaps. Assume they use the same ordering function.
Return the minimum element of a heap.
Create a heap with a single element.
compck/heap/comp: forall<a> (pairing-heap<a>) -> ((a, a) -> order)
determines the order of elements in the heap.
Pairing heap
Reference:
Warning: this implementation is slow.