【发布时间】:2016-04-21 21:09:14
【问题描述】:
定义一个函数
rmdups :: Eq a => [a] -> [a]
从列表中删除重复项。例如,rmdups "ababca" 应该返回
"abc"。输出列表中元素的顺序并不重要
这是我到目前为止所做的: 这有效:
rmdups :: Eq a => [a] -> [a]
rmdups [] = []
rmdups (x:xs) = x : rmdups (filter(/= x) xs)
这不起作用,我做错了什么:
rmdups = map head . group . sort
【问题讨论】:
-
它适用于您给出的示例。什么是它不起作用的例子?
-
没有最后一行代码不起作用。编译器说组不在范围内。
-
啊,正如 baxbaxwalanuksiwe 所说,这是因为您缺少
import。在以后的问题中,您应该包含收到的任何错误消息。
标签: haskell