最終更新日時(UTC):
が更新

履歴 編集

<numeric>

numeric

<numeric> ヘッダでは、数値のシーケンスや数値の処理に特化したアルゴリズムを定義する。

集計

名前 説明 対応バージョン
accumulate 範囲を集計する
reduce 範囲を集計する C++17
transform_reduce 範囲の要素を変換しながら集計する C++17

内積

名前 説明 対応バージョン
inner_product 2つのシーケンスの内積を計算する

部分和

名前 説明 対応バージョン
partial_sum 範囲の部分和を計算する
inclusive_scan 範囲の部分和を計算する (i番目の部分和にi番目の要素を含む) C++17
exclusive_scan 範囲の部分和を計算する (i番目の部分和にi番目の要素を含めない) C++17
transform_inclusive_scan 範囲の要素を変換しながら部分和を計算する (i番目の部分和にi番目の要素を含む) C++17
transform_exclusive_scan 範囲の要素を変換しながら部分和を計算する (i番目の部分和にi番目の要素を含めない) C++17

数列

名前 説明 対応バージョン
adjacent_difference 隣接する要素間の差を計算する
iota 指定された値から始まる整数列を生成する C++11
ranges::iota 指定された値から始まる整数列を生成する C++23

最大公約数と最小公倍数

名前 説明 対応バージョン
gcd 最大公約数を求める C++17
lcm 最小公倍数を求める C++17

中点

名前 説明 対応バージョン
midpoint 数値とポインタの中点を求める C++20

飽和演算

名前 説明 対応バージョン
add_sat 飽和加算x + y C++26
sub_sat 飽和減算x - y C++26
mul_sat 飽和乗算x * y C++26
div_sat 飽和除算x / y C++26
saturate_cast 飽和演算あり型キャスト C++26

関連項目