私はリストを取って、常に2つの要素を逆にしたい。 例:ハスケル、リストの2つの要素を逆にしますか?
入力1:[1,2,3,4,5]
、出力1:[2,1,4,3,5]
入力2:[1,2,3,4,5,6]
出力2:[2,1,4,3,6,5]
Iは、パターンマッチングでそれを試してみました:
g1 [] = []
g1 (x:y:xs) = y: x: g1 xs
しかし、それは言います:
*Main> g1 [1,2,3]
*** Exception: test.hs:(13,1)-(14,27): Non-exhaustive patterns in function g1
g1
誰かこの問題を解決するアイデアはありますか?
:
または全体の関数定義要素。 – Lee
1つの要素を含むリストに対して何をすべきか? –