-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | n log n implementation of suffix array.
--
-- n log n implementation of suffix array.
@package suffixarray
@version 0.0.3
-- |
-- - Module : Data.CountingSort - License : GPL2 - - Stability :
-- experimental
--
module Data.CountingSort
countingSort :: (Ix a, Ord a, Bounded a) => Vector a -> Vector Int -> Vector Int
iforeachr :: (Ix a, Ord a, Bounded a) => Vector a -> (Int -> a -> IO ()) -> IO ()
partialSums :: Vector Int -> Vector Int
countOccurences :: (Ix a, Ord a, Bounded a) => Vector a -> Vector Int
-- |
-- - Module : Data.SuffixArray - Copyright : (c) 2010 Daniël de Kok (c)
-- 2012 Victor Denisov - License : GPL2 - - Maintainer : Daniël de Kok
-- me@danieldk.eu Victor Denisov denisovenator@gmail.com -
-- Stability : experimental - - Construction of suffix arrays (arrays
-- ordered by suffix). Given an - array d elements, the suffix
-- array is a sorted array of the sub-arrays - in d. For instance,
-- the suffix array of banana apple pear apple is: - - * apple - -
-- * apple pear apple - - * banana apple pear apple - - * pear apple
--
module Data.SuffixArray
data SuffixArray a
SuffixArray :: (Vector a) -> (Vector Int) -> SuffixArray a
-- | Generate a suffix array as list.
suffixArray :: (Ix a, Ord a, Bounded a) => Vector a -> SuffixArray a
simpleEquator :: (Ix a, Ord a, Bounded a) => Vector a -> Vector Int -> Equator
fancyEquator :: (Ix a, Ord a, Bounded a) => Vector a -> Vector Int -> Int -> Int -> Equator
shiftList :: Int -> Int -> Vector Int -> Vector Int
composeLists :: Vector Int -> Vector Int -> Vector Int
populateClassesBy :: Equator -> Vector Int -> Vector Int
-- |
-- - fromList constructs a suffix array from a list of
-- elements.
--
fromList :: (Ix a, Ord a, Bounded a) => [a] -> SuffixArray a
-- |
-- - toList constructs a list from a suffix array.
--
toList :: SuffixArray a -> [[a]]
instance Show a => Show (SuffixArray a)