这是我到目前为止写的,但我有点失落:
removeone :: [a] -> [[a]]
removeone [] = []
removeone (a:as) = [as] -- I'm lost here
Run Code Online (Sandbox Code Playgroud)
这是我正在寻找的那种输出:
removeone [1,2,3] = [[2,3],[1,3],[1,2]]
removeone [1,2] = [[1],[2]]
Run Code Online (Sandbox Code Playgroud)
解决这个问题的最佳方法是什么?在Java中,我只是循环这个,每次产生一个新的列表,我将附加到一个预先存在的列表.我很想把它翻译成Haskell.