August 2021
Intermediate to advanced
450 pages
6h 57m
Chinese
在<numeric>中,标准库提供了一些推广的数值算法,其风格类似<algorithm>中的非数值算法(见第32章)。这些算法提供了通用版本,对数值序列进行常见运算:
这些算法推广了求和这样的常见运算,将它们应用于各种序列并将施用于序列元素的运算作为参数。对每个算法,标准库都在通用版本之外提供了应用最常用运算符的版本。
accumulate()的简单版本累加序列中的元素,使用的是+运算符:
我们可以像下面这样使用accumulate():
传递来的初值的类型决定了返回类型。
我们可以传递给accumulate()一个初始值和一个“组合元素”的操作,因此accumulate()并非总是进行加法运算。
从一个数据结构中抽取值的操作是accumulate()的最常见的操作。例如:
在某些社区中,类似accumulate的操作被称为reduce、reduction和fold。
累加一个序列非常常见,而累加一对序列也并不罕见: ...
Read now
Unlock full access