我有一组数组数组.举个例子
[[1,3],
[4,3],
[1,2],
[7,2]]
Run Code Online (Sandbox Code Playgroud)
我想把它变成
[(3,[1,4])
(2,[1,7])]
Run Code Online (Sandbox Code Playgroud)
是:从创建的元组,其中所述第一构件是从原始和阵列的索引1的阵列的索引为0的所有值的原始基于索引1.我可以命令式地解决这一点,但想这样做分组以更多FP的方式
使用Seq.groupBy结合几张地图会得到期望的结果
[[1;3];
[4;3];
[1;2];
[7;2]]
|> Seq.groupBy (fun (a::b) -> b)
|> Seq.map (fun (a,b) -> a,b|> Seq.toList)
|> Seq.map (fun (a,b) -> a,b|>List.map (fun (c::d) -> c ))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
314 次 |
| 最近记录: |