1
1
我不是百分之百肯定,但从源代码来看Data.List.transpose转置他很懒。 http://www.haskell.org/ghc/docs/6.12.2/html/libraries/base-4.2.0.1/src/Data-List.html#transpose 我认为转置可以帮助你重组指针:
|
2
5
一些样本数据会让你的问题更容易理解。我假设给定如下列表:
如果是这样,首先想到的是Data.Map.insertWith插入. 这类似于创建从键到值的映射,除非值已经存在,指定的函数将应用于当前值和新值,并且 已插入。
那么step0只是一个映射键到值的映射。但如果我们再叫它:
考虑到
现在我们只需要为每一行累加到这个图中,而不仅仅是第一行。这只是另一个方面:
现在你可以写:
获得:
一个简单的
|
3
0
所以我假设你从一个q的列表开始,然后映射它们(q->[(k,v)])来提取属性-值对,得到[[(k,v)]],然后你想把它变成一个包含属性和所有存在的值的对的列表。此外,属性键是有界枚举,因此可以枚举所有键。 然后您要做的是遍历所有键并选择值
这是懒惰的;你可以用
|
trpnd · 如何定义由两个任意单声道变压器组成的单声道变压器? 2 年前 |
Fabus1184 · Haskell mapM_不打印 2 年前 |
Gotthold · 基于范数约束向量的类型 2 年前 |
jian · haskell将另一个函数用作输入参数 2 年前 |
Jocafrei · 用Haskell函数实现最大公约数函数 6 年前 |