Heap package:heaps

An efficient, asymptotically optimal, implementation of a priority queues extended with support for efficient size, and Foldable Note: Since many function names (but not the type name) clash with Prelude names, this module is usually imported qualified, e.g.
import Data.Heap (Heap)
import qualified Data.Heap as Heap
The implementation of Heap is based on bootstrapped skew binomial heaps as described by: All time bounds are worst-case.
A min-heap of values of type a.
Asymptotically optimal Brodal/Okasaki heaps. Asymptotically optimal Brodal/Okasaki bootstrapped skew-binomial heaps from the paper "Optimal Purely Functional Priority Queues", extended with a Foldable interface.