1️⃣
[Haskell] reverseを実装する
すごいHaskellたのしく学ぼう!を読んでいるので、アウトプットします。
あくまで初学者のアウトプットなので、あまりイケてない記述があるかもしれません。
第4章で再帰関数を実装する問題があるので、自分なりの回答を載せます。
reverse
reverse関数は、関数はリストの要素の順序を逆にする標準関数です。
この関数は、任意の型の要素を持つリストを受け取り、その要素の順序を逆転した新しいリストを返します。
reverse [1, 2, 3, 4, 5] -- [5, 4, 3, 2, 1]
reverse "hello" -- "olleh"
reverse [] -- []
本の回答・自分の回答
reverse' :: [a] -> [a]
reverse' [] = []
reverse' (x : xs) = reverse' xs ++ [x]
完全に回答と一緒だった。結構慣れてきた感がある。
Discussion