<numeric>

定义执行数值处理算法的容器模板函数。

要求

标头:<numeric>

命名空间: std

备注

数字算法类似于 <algorithm> 中的 C++ 标准库算法,并可以对各种数据结构进行操作。 这包括标准库容器类(例如 vectorlist)、程序定义的数据结构和满足特定算法需求的元素数组。 这些算法通过迭代器间接访问并遍历容器元素来实现此一般性级别。 这些算法处理通常由开始或末尾位置指定的迭代器范围。 引用的范围必须有效,即范围中的所有指针必须可以取消引用,并且在每个范围的序列中,可从第一个位置递增到达最后一个位置。

这些算法可扩展每个 C++ 标准库容器的运算和成员函数支持的操作,并允许同时与不同类型的容器对象进行交互。

成员

函数

名称 描述
accumulate 通过计算连续的部分和来计算指定范围中所有元素的总和(包括初始值),或计算通过使用指定二元运算而非求和运算获得的连续部分结果的结果总和。
adjacent_difference 计算输入范围中每个元素与其前一元素之间的连续差值,并将结果输出到目标范围,或计算将差值运算替换为其他指定二元运算的一般化程序的结果。
exclusive_scan
gcd
inclusive_scan
inner_product 计算两个范围的逐元素集乘积的总和并将总和添加到指定初始值,或计算将求和与乘积运算替换为其他指定二元运算的一般化程序的结果。
iota 存储一个起始值,从第一个元素开始,在间隔 value++ 内的每个元素中填充此值的连续递增值 ([first, last))。
lcm
partial_sum 计算输入范围中从第一个元素到第 i 个元素的一系列总和,并在目标范围的第 i 个元素中存储每个总和的结果,或计算将求和运算替换为其他指定二元运算的一般化程序的结果。
reduce
transform_exclusive_scan
transform_inclusive_scan
transform_reduce

另请参阅

头文件引用
C++ 标准库中的线程安全
C++ 标准库参考