アルゴリズム

[C++] std::replace()の使い方 – 特定要素を置換する

C++のstd::replace()は、指定した範囲内で特定の要素を別の要素に置き換える標準ライブラリ関数です。 ヘッダファイル<algorithm>をインクルードして使用します。 シグネチャはstd::replace(Inpu

続きを読む »
アルゴリズム

[C++] prev_permutation()の使い方 – 小さい順列を発見する

C++のstd::prev_permutation()は、与えられた範囲の要素を辞書順で前の順列に並べ替える関数です。 これを使うと、現在の順列よりも辞書順で小さい順列を効率的に生成できます。 範囲が最小の順列の場合はfalseを返し、それ

続きを読む »
map

[C++] map::empty()の使い方 – マップが空か判定する

C++のmap::empty()は、std::mapが空であるかを判定するメンバ関数です。 この関数は、マップに要素が1つも存在しない場合にtrueを返し、要素が存在する場合はfalseを返します。 戻り値はブール型で、時間計算量は定数時間

続きを読む »
数値型

[C++] long型の最大値・最小値を取得する方法

C++でlong型の最大値と最小値を取得するには、<climits>ヘッダーを使用し、LONG_MAXとLONG_MINを参照します。 これらはそれぞれlong型の最大値と最小値を定義した定数です。 例えば、LONG_MAXはプ

続きを読む »
アルゴリズム

[C++] pop_heap()の使い方 – 先頭末尾の入れ替え/ヒープ範囲の再構築

C++のpop_heap()は、ヒープ構造を維持しながら、ヒープの先頭要素(最大値または最小値)を末尾に移動させるために使用されます。 この関数は、std::make_heap()やstd::push_heap()と組み合わせて使われること

続きを読む »
map

[C++] map::clear()の使い方 – マップ要素を全て削除する

C++のmap::clear()は、std::mapコンテナ内の全ての要素を削除し、コンテナを空にするためのメンバ関数です。 この関数を呼び出すと、マップ内のキーと値のペアが全て削除され、サイズは0になります。 時間計算量は線形で、削除され

続きを読む »
数値型

[C++] long型とstring型を相互変換する方法

C++でlong型とstring型を相互変換するには、標準ライブラリを使用します。 long型をstring型に変換するにはstd::to_string関数を使用します。 一方、string型をlong型に変換するにはstd::stol関数

続きを読む »
アルゴリズム

[C++] partition()の使い方 – コンテナの範囲を区分化する

C++のstd::partitionは、指定した条件を満たす要素をコンテナの先頭に集め、それ以外を後方に移動させるアルゴリズムです。 戻り値は条件を満たす要素の範囲の終端を指すイテレータです。 使用するには、範囲(イテレータ)と条件を指定し

続きを読む »
map

[C++] map::begin()の使い方 – 最下位キーのpairの取得

map::begin()は、C++のstd::mapコンテナで最初の要素(最小のキーに対応する要素)へのイテレータを返します。 これを使用することで、最下位キーとその値を取得できます。 イテレータが指す要素はstd::pair<con

続きを読む »
数値型

[C++] long long型の範囲 / 最大値・最小値の取得

C++のlong long型は、64ビット整数を表すデータ型で、符号付き整数として使用されます。 その範囲は、最小値が\(-2^{63}\)、最大値が\(2^{63} – 1\)です。 具体的には、最小値は\(-9,223,37

続きを読む »
アルゴリズム

[C++] nth_element()の使い方 – 部分ソートと効率的な要素検索

nth_element()はC++標準ライブラリのアルゴリズムで、指定した範囲内で部分的なソートを行い、指定した位置(n番目)の要素をその位置に移動させます。 この操作により、n番目の要素はソート済みの状態となり、それより小さい要素は前方、

続きを読む »
アルゴリズム

[C++] min_element()の使い方 – コンテナから最小値を持つ要素の取得

C++のstd::min_element()は、指定した範囲内で最小値を持つ要素を指すイテレータを返す関数です。 #include <algorithm>をインクルードして使用します。 基本的な構文はstd::min_eleme

続きを読む »
アルゴリズム

[C++] search()の使い方 – 特定の値を持つ要素を検索

C++で特定の値を持つ要素を検索するには、標準ライブラリのstd::find関数を使用します。 この関数は、指定した範囲内で最初に一致する要素のイテレータを返します。 使用方法はstd::find(開始イテレータ, 終了イテレータ, 検索値

続きを読む »
アルゴリズム

[C++] std::merge()の使い方 – ソート済みコンテナの結合

C++のstd::merge()は、2つのソート済み範囲を1つのソート済み範囲に結合するアルゴリズムです。 引数として、結合する範囲の開始・終了イテレータ(2組)と、結果を格納する出力イテレータを指定します。 デフォルトではoperator

続きを読む »
アルゴリズム

[C++] search_n()の使い方 – 連続しているシーケンスの先頭要素を取得する

C++のstd::search_nは、指定した範囲内で特定の値が連続して現れる最初の位置を検索するアルゴリズムです。 引数として、範囲の開始・終了イテレータ、連続回数、検索する値を指定します。 オプションで比較関数も渡せます。 戻り値は見つ

続きを読む »
アルゴリズム

[C++] std::max()の使い方 – 2つの値から最大値を取得

C++の標準ライブラリに含まれるstd::max()は、2つの値を比較して大きい方の値を返す関数です。 ヘッダファイル<algorithm>をインクルードすることで使用可能です。 基本的な使い方はstd::max(a, b)で、

続きを読む »
list

[C++] list::size()の使い方 – 要素数を取得する

C++のstd::listクラスのsize()メンバ関数は、リスト内の要素数を取得するために使用されます。 この関数は定数時間で動作し、リストが現在保持している要素の数を返します。 使用方法は、リストオブジェクトに対してlist.size(

続きを読む »
list

[C++] list::push_back()の使い方 – 末尾に要素を追加する

C++のstd::listクラスのpush_back()メンバ関数は、リストの末尾に新しい要素を追加するために使用されます。 この関数は、リストのサイズを動的に拡張し、指定した値をコピーまたはムーブして挿入します。 例えば、std::lis

続きを読む »
list

[C++] list::pop_front()の使い方 – 先頭要素を削除する

C++のstd::listクラスのpop_front()メソッドは、リストの先頭要素を削除するために使用されます。 このメソッドは、先頭要素を削除するだけで、戻り値はありません。 リストが空の場合に呼び出すと未定義動作となるため、事前にem

続きを読む »
Back to top button