【发布时间】:2015-07-17 06:57:58
【问题描述】:
我们需要将两个列表合并到一个列表中,该列表需要一个单词出现在列表中的频率。
如果我们有:
`List 1 [("Hi", 0.45),("Steve", 0.0.5),("Bye",0.9)]...`
`List 2 [("Hello", 0.56), ("Steve", 0.6), ("Bye", 0.6)]..`
我们想得到:[("Hi",0.45,0), ("Steve", 0.0.5, 0.6)...
mergeLists :: [(a,Float)] -> [(a,Float)] -> [(a,Float,Float)]
mergeLists v y = map (\x -> ( fst x, if not (elem (fst x) v) then 0
else 5 ,
if not (elem (fst x) v) then 5
else 0))y
现在我们通过下面的代码来做,但是我们还有很多问题要继续。
我正在尝试前进第一个列表,如果list2不包含元素写入0,否则将两个列表的频率值写入新的。
【问题讨论】:
-
您有什么具体的问题吗?
-
@neuronaut 我该怎么做?我正在尝试使用我附加的代码。但是还不行。
标签: list haskell merge haskell-platform