Longest increasing subsequence: Difference between revisions
Content added Content deleted
Line 459: | Line 459: | ||
lis :: Ord a => [a] -> [a] |
lis :: Ord a => [a] -> [a] |
||
lis lst = runST $ do |
lis lst = runST $ do |
||
let llst = length lst |
|||
pileTops <- newSTArray (min llst 1, lst) [] |
|||
let bsearchPiles x len = aux 1 len where |
let bsearchPiles x len = aux 1 len where |
||
aux lo hi | lo > hi = return lo |
aux lo hi | lo > hi = return lo |