小编Wal*_*ace的帖子

折叠与减少之间的区别?

试图学习F#,但在尝试区分折叠减少时感到困惑.折叠似乎做同样的事情,但需要额外的参数.是否存在这两种功能存在的合理原因,或者它们是否适合具有不同背景的人?(例如:C#中的字符串和字符串)

以下是从示例中复制的代码段:

let sumAList list =
    List.reduce (fun acc elem -> acc + elem) list

let sumAFoldingList list =
    List.fold (fun acc elem -> acc + elem) 0 list

printfn "Are these two the same? %A " 
             (sumAList [2; 4; 10] = sumAFoldingList [2; 4; 10])
Run Code Online (Sandbox Code Playgroud)

reduce f# functional-programming fold

115
推荐指数
4
解决办法
3万
查看次数

标签 统计

f# ×1

fold ×1

functional-programming ×1

reduce ×1