Share via


<numeric>

数値処理のアルゴリズムを実行するコンテナーのテンプレート関数を定義します。

必要条件

ヘッダー: <numeric>

名前空間: std

解説

この数値処理のアルゴリズムは C++ 標準ライブラリの <algorithm> のアルゴリズムと似ており、さまざまなデータ構造体で操作できます。 これには、標準ライブラリ コンテナー クラス (vectorlist など) と、特定のアルゴリズムの要件を満たすプログラム定義のデータ構造体と要素の配列が含まれます。 アルゴリズムは、反復子によって間接的にコンテナー要素にアクセスし、走査することによって、このレベルの一般性を実現します。 アルゴリズムは、通常、開始位置または終了位置によって指定される反復子範囲を処理します。 参照される範囲は、範囲内のすべてのポインターが逆参照可能であるという意味において有効であり、かつ各範囲のシーケンス内で先頭位置からのインクリメントにより最後の位置に到達可能である必要があります。

アルゴリズムでは、各 C++ 標準ライブラリ コンテナーの操作およびメンバー関数でサポートされている操作を拡張し、異なる型のコンテナー オブジェクトを同時に操作できるようにします。

メンバー

関数

名前 説明
accumulate 連続する部分和を計算することで、初期値を含め、指定された範囲のすべての要素の合計を計算します。または、合計演算の代わりに、指定された二項演算を使用して取得された連続する部分的な結果を計算します。
adjacent_difference 入力範囲内の各要素とその先行要素との連続する差分を計算し、結果をターゲット範囲に出力するか、または差分演算が指定された別の二項演算に置き換えられた汎用化されたプロシージャの結果を計算します。
exclusive_scan
gcd
inclusive_scan
inner_product 2 つの範囲の要素ごとの積の合計を計算し、それを指定された初期値に加算するか、または和や積の演算が指定された別の二項演算に置き換えられた汎用化されたプロシージャの結果を計算します。
iota 開始値を格納し、最初の要素から始めて、一連の値のインクリメント (value++) を [first, last) の間隔で各要素に入力します。
lcm
partial_sum 入力範囲の最初の要素から i 番目の要素までの一連の合計を計算し、各合計の結果をターゲット範囲の i 番目の要素に格納するか、または合計演算が指定された別の二項演算に置き換えられた汎用化されたプロシージャの結果を計算します。
reduce
transform_exclusive_scan
transform_inclusive_scan
transform_reduce

関連項目

ヘッダー ファイル リファレンス
C++ 標準ライブラリ内のスレッド セーフ
C++ 標準ライブラリ リファレンス