Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)
Paste
Pasted as Plain Text by Jessica ( 16 years ago )
myMergeSort =
mapReduce
id
(mergeUntilDone)
sorted
id
(\_ xs -> xs)
where sorted xs = and (zipWith (<=) xs (tail xs))
--mergeUntilDone
mergeUntilDone [xs] = xs -- Only one list left. We are done.
mergeUntilDone xss = mergeUntilDone (mergeListPairs xss)
--mergeListPairs
mergeListPairs xss | length xss <= 1 = xss
mergeListPairs (xs1:xs2:xss) = (merge xs1 xs2) : mergeListPairs xss
It doesnt compile
SecondChanceMidterm.hs:39:2:
Couldn't match expected type `Bool' against inferred type `[[t]]'
In the second argument of `recursionEngine', namely
`(mergeUntilDone)'
In the expression:
recursionEngine id (mergeUntilDone) sorted id (\ _ xs -> xs)
In the definition of `myMergeSort':
myMergeSort = recursionEngine
id (mergeUntilDone) sorted id (\ _ xs -> xs)
where
sorted xs = and (zipWith (<=) xs (tail xs))
Revise this Paste
Parent: 24447