| Copyright | Copyright (c) 1999, 2008 Chris Okasaki | 
|---|---|
| License | MIT; see COPYRIGHT file for terms and conditions | 
| Maintainer | robdockins AT fastmail DOT fm | 
| Stability | stable | 
| Portability | GHC, Hugs (MPTC and FD) | 
| Safe Haskell | None | 
| Language | Haskell2010 | 
Data.Edison.Coll.MinHeap
Contents
Description
A generic adaptor for bags to keep the minimum element separately.
- data Min h a
 - empty :: Min h a
 - singleton :: (CollX h a, Ord a) => a -> Min h a
 - fromSeq :: (OrdColl h a, Ord a, Sequence s) => s a -> Min h a
 - insert :: (OrdCollX h a, Ord a) => a -> Min h a -> Min h a
 - insertSeq :: (OrdColl h a, Ord a, Sequence s) => s a -> Min h a -> Min h a
 - union :: (OrdCollX h a, Ord a) => Min h a -> Min h a -> Min h a
 - unionSeq :: (OrdColl h a, Ord a, Sequence s) => s (Min h a) -> Min h a
 - delete :: (OrdColl h a, Ord a) => a -> Min h a -> Min h a
 - deleteAll :: (OrdColl h a, Ord a) => a -> Min h a -> Min h a
 - deleteSeq :: (OrdColl h a, Ord a, Sequence s) => s a -> Min h a -> Min h a
 - null :: Min h a -> Bool
 - size :: CollX h a => Min h a -> Int
 - member :: (CollX h a, Ord a) => a -> Min h a -> Bool
 - count :: (CollX h a, Ord a) => a -> Min h a -> Int
 - strict :: (CollX h a, Ord a) => Min h a -> Min h a
 - structuralInvariant :: (Ord a, OrdColl h a) => Min h a -> Bool
 - toSeq :: (Coll h a, Sequence s) => Min h a -> s a
 - lookup :: (Coll h a, Ord a) => a -> Min h a -> a
 - lookupM :: (Coll h a, Ord a, Monad m) => a -> Min h a -> m a
 - lookupAll :: (Coll h a, Ord a, Sequence s) => a -> Min h a -> s a
 - lookupWithDefault :: (Coll h a, Ord a) => a -> a -> Min h a -> a
 - fold :: Coll h a => (a -> b -> b) -> b -> Min h a -> b
 - fold' :: Coll h a => (a -> b -> b) -> b -> Min h a -> b
 - fold1 :: Coll h a => (a -> a -> a) -> Min h a -> a
 - fold1' :: Coll h a => (a -> a -> a) -> Min h a -> a
 - filter :: OrdColl h a => (a -> Bool) -> Min h a -> Min h a
 - partition :: OrdColl h a => (a -> Bool) -> Min h a -> (Min h a, Min h a)
 - strictWith :: OrdColl h a => (a -> b) -> Min h a -> Min h a
 - deleteMin :: (OrdColl h a, Ord a) => Min h a -> Min h a
 - deleteMax :: (OrdCollX h a, Ord a) => Min h a -> Min h a
 - unsafeInsertMin :: (OrdCollX h a, Ord a) => a -> Min h a -> Min h a
 - unsafeInsertMax :: (OrdCollX h a, Ord a) => a -> Min h a -> Min h a
 - unsafeFromOrdSeq :: (OrdCollX h a, Ord a, Sequence s) => s a -> Min h a
 - unsafeAppend :: (OrdCollX h a, Ord a) => Min h a -> Min h a -> Min h a
 - filterLT :: (OrdCollX h a, Ord a) => a -> Min h a -> Min h a
 - filterLE :: (OrdCollX h a, Ord a) => a -> Min h a -> Min h a
 - filterGT :: (OrdColl h a, Ord a) => a -> Min h a -> Min h a
 - filterGE :: (OrdColl h a, Ord a) => a -> Min h a -> Min h a
 - partitionLT_GE :: (OrdColl h a, Ord a) => a -> Min h a -> (Min h a, Min h a)
 - partitionLE_GT :: (OrdColl h a, Ord a) => a -> Min h a -> (Min h a, Min h a)
 - partitionLT_GT :: (OrdColl h a, Ord a) => a -> Min h a -> (Min h a, Min h a)
 - minView :: (OrdColl h a, Ord a, Monad m) => Min h a -> m (a, Min h a)
 - minElem :: (OrdColl h a, Ord a) => Min h a -> a
 - maxView :: (OrdColl h a, Ord a, Monad m) => Min h a -> m (a, Min h a)
 - maxElem :: (OrdColl h a, Ord a) => Min h a -> a
 - foldr :: (OrdColl h a, Ord a) => (a -> b -> b) -> b -> Min h a -> b
 - foldr' :: (OrdColl h a, Ord a) => (a -> b -> b) -> b -> Min h a -> b
 - foldl :: (OrdColl h a, Ord a) => (b -> a -> b) -> b -> Min h a -> b
 - foldl' :: (OrdColl h a, Ord a) => (b -> a -> b) -> b -> Min h a -> b
 - foldr1 :: (OrdColl h a, Ord a) => (a -> a -> a) -> Min h a -> a
 - foldr1' :: (OrdColl h a, Ord a) => (a -> a -> a) -> Min h a -> a
 - foldl1 :: (OrdColl h a, Ord a) => (a -> a -> a) -> Min h a -> a
 - foldl1' :: (OrdColl h a, Ord a) => (a -> a -> a) -> Min h a -> a
 - toOrdSeq :: (OrdColl h a, Ord a, Sequence s) => Min h a -> s a
 - unsafeMapMonotonic :: (OrdColl h a, Ord a) => (a -> a) -> Min h a -> Min h a
 - toColl :: OrdColl h a => Min h a -> h
 - fromColl :: OrdColl h a => h -> Min h a
 - moduleName :: String
 
Min heap adaptor type
Instances
| (Eq h, Eq a) => Eq (Min h a) Source | |
| (Eq h, OrdColl h a) => Ord (Min h a) Source | |
| (OrdColl h a, Read h) => Read (Min h a) Source | |
| (OrdColl h a, Show h) => Show (Min h a) Source | |
| (OrdColl h a, Arbitrary h, Arbitrary a) => Arbitrary (Min h a) Source | |
| (OrdColl h a, CoArbitrary h, CoArbitrary a) => CoArbitrary (Min h a) Source | |
| OrdColl h a => Monoid (Min h a) Source | |
| (OrdColl h a, Ord a) => CollX (Min h a) a Source | |
| (OrdColl h a, Ord a) => OrdCollX (Min h a) a Source | |
| (OrdColl h a, Ord a) => Coll (Min h a) a Source | |
| (OrdColl h a, Ord a) => OrdColl (Min h a) a Source | 
CollX operations
Coll operations
lookupWithDefault :: (Coll h a, Ord a) => a -> a -> Min h a -> a Source
strictWith :: OrdColl h a => (a -> b) -> Min h a -> Min h a Source