标准ML:如何从标准ML中的列表列表访问列

标准ML:如何从标准ML中的列表列表访问列,ml,Ml,假设我有一个列表 列表=[[1,2,3],[4,5,6],[7,8,9]] 我想计算列的和。 i、 e第一列为[1,4,7],其和为12 第二列是[2,5,8],总和是15,依此类推 在标准ML中是否有任何有效的方法(复杂度较低)可以做到这一点??请提供帮助,例如: fun transpose [] = [] | transpose ([]::xss) = [] | transpose xss = map hd xss :: transpose (map tl xss) val sum

假设我有一个列表 列表=[[1,2,3],[4,5,6],[7,8,9]] 我想计算列的和。 i、 e第一列为[1,4,7],其和为12 第二列是[2,5,8],总和是15,依此类推

在标准ML中是否有任何有效的方法(复杂度较低)可以做到这一点??请提供帮助,例如:

fun transpose [] = []
  | transpose ([]::xss) = []
  | transpose xss = map hd xss :: transpose (map tl xss)

val sum = foldl op+ 0

val sumsOfColumns = map sum o transpose
示例用法:

sumsOfColumns [[1,2,3],[4,5,6],[7,8,9]]  (* => [12, 15, 18] *)
)()