【发布时间】:2010-09-28 01:36:22
【问题描述】:
我试图弄清楚如何创建一个仅包含仅出现一次的元素的新列表。我也不能使用递归。
这是更大功能的一小部分。我试图编写一个函数来获取两组的相交。基本上我组合了这些集合。然后排序。然后我想将它与集合 B 结合起来并删除该集合中的所有重复项。除非其他人知道更简单的方法。
我可以使用高阶函数,但我不能使用递归。
谢谢
编辑: 示例:
[1,2,3,3,4,4,5,5] 应该是 [1,2]
【问题讨论】:
我试图弄清楚如何创建一个仅包含仅出现一次的元素的新列表。我也不能使用递归。
这是更大功能的一小部分。我试图编写一个函数来获取两组的相交。基本上我组合了这些集合。然后排序。然后我想将它与集合 B 结合起来并删除该集合中的所有重复项。除非其他人知道更简单的方法。
我可以使用高阶函数,但我不能使用递归。
谢谢
编辑: 示例:
[1,2,3,3,4,4,5,5] 应该是 [1,2]
【问题讨论】:
这个问题之前已经被问过,基本上你只是想通过计算元素的数量将它们组合在一起,然后只提取那些计数为 1 的元素。 (可能使用'filter')
【讨论】:
我希望这个提示足够模糊。 :)
考虑将重复的元素组合在一起。
【讨论】:
想想你将使用什么数据结构来跟踪每件事的出现次数。
【讨论】:
怎么样:
concat $ filter (null . tail) $ group [1,2,3,3,4,4,5,5]
【讨论】: