Mat*_*att 3 haskell duplicate-removal
是否可以创建一个函数来创建一个带有列表输入的集合.
没有使用递归我只是想不出任何办法.
我可以使用高阶函数,如折叠,滤镜,地图,zip.我只是无法在我的函数中进行递归.
显然我不能使用小块.
我一直在试图弄清楚如何摆脱重复没有递归或任何类型的循环(至少我不认为我们可以使用循环,要问).
sep*_*p2k 10
一种方法:
[1,1,2,3]成[(1,1),(1,2),(2,3)])在代码中:
import Data.List
setify [] = []
setify xs = x : map snd (filter (uncurry (/=)) (zip sxs (tail sxs)))
where sxs = sort xs
x = head sxs
Run Code Online (Sandbox Code Playgroud)