関数型プログラミング言語Haskell Part22
■ このスレッドは過去ログ倉庫に格納されています
0463デフォルトの名無しさん
2013/05/30(木) 22:20:15.44ID:WFTkAEQe!*Main> pack [1,1,1,2,2,3,4,4]
[[1,1,1],[2,2],[3],[4,4],[]]
があったとき、どうすれば最後の[]を消せるのだろうか?
元をちょこっと書き足してみたのだが。
duplicateSet :: (Eq a) => [a] -> [a]
duplicateSet list = case (list) of
[] -> []
[x] -> [x]
(x:y:xs)
| x == y -> y : duplicateSet (x:xs)
| otherwise -> [x]
deleteSet :: (Eq a) => [a] -> [a] -> [a]
deleteSet originaList set = case (originaList) of
[] -> []
(x:xs) -> case (set) of
(y:ys)
| x == y -> deleteSet xs ys
| otherwise -> error"Something wrong"
[] -> (x:xs)
-- _ -> error"Need at least one element"
■ このスレッドは過去ログ倉庫に格納されています