queuelike-1.0.5: A library of queuelike data structures, both functional and stateful.
Data.Queue.TrieQueue
Description
An experimental trie-based priority queue for lists.
type Label e = Seq eSource
data Trie e Source
Constructors
Instances
type MTrie e = Maybe (Trie e)Source
newtype TrieQueue e Source
mkTQ :: Int -> Trie e -> TrieQueue eSource
mkLab :: [e] -> Label eSource
catTrie :: Ord e => Label e -> Trie e -> Trie eSource
compactTrie :: Ord e => Trie e -> Trie eSource
compactTrie' :: Ord e => Trie e -> MTrie eSource
extractMin' :: Ord e => Trie e -> (Label e, MTrie e)Source
type TailMaker e = Label e -> Trie eSource
merge' :: Ord e => Label e -> Label e -> TailMaker e -> TailMaker e -> (e -> TailMaker e) -> (e -> TailMaker e) -> Trie e -> Trie eSource
merger :: Ord e => Trie e -> Trie e -> Trie eSource
trieFromList :: Ord e => [[e]] -> MTrie eSource