• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

Haskell比较元素[[]]

list 来源:kefir 6次浏览

我正在用Haskell处理小程序。 也许答案很简单,但我试着得不到结果。 所以我在程序的部分之一是列表Haskell比较元素[[]]

first = [(3,3),(4,6),(7,7),(5,43),(9,9),(32,1),(43,43) ..] 

,并根据该列表我要做出新的一个与元素是在()=

result = [3,7,9,43, ..]

如果相等你有时间和耐心,我将不胜感激


===========解决方案如下:

即使你似乎没有做出最小的努力来自己解决这个问题,我会给你答案,因为它是如此微不足道,因为Haskell是一门伟大的语言。

与此签名创建一个函数:

findIdentical :: [(Int, Int)] -> [Int] 

它需要一个元组列表,并返回整数的列表。

这样实现:

findIdentical [] = [] 
findIdentical ((a,b) : xs) 
    | a == b = a : (findIdentical xs) 
    | otherwise = findIdentical xs 

正如你所看到的,findIdentical是一个递归函数,两个项目之间的平等比较的元组,然后如果发现平等把它添加到结果列表。


版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)