【问题标题】:Standard ML : How to access column from list of list in standard ML标准 ML:如何从标准 ML 中的列表访问列
【发布时间】:2015-04-05 05:10:17
【问题描述】:

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

在标准 ML 中是否有任何有效的方法(复杂性较低)来做到这一点?请帮忙

【问题讨论】:

    标签: ml


    【解决方案1】:

    例如:

    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] *)
    

    ;)

    【讨论】:

      猜你喜欢
      • 2011-05-05
      • 1970-01-01
      • 2017-11-30
      • 2012-04-14
      • 2020-07-07
      • 2014-04-02
      • 2017-11-23
      • 2011-01-26
      • 2018-08-17
      相关资源
      最近更新 更多