cppreference.com -> C++ アルゴリズム -> ソート関連アルゴリズム

ソート関連アルゴリズム

配列のソート、ソートの準備、ソート後の配列に対する操作などのアルゴリズムです。<algorithm>で提供されます。

※表の読み方

binary_search() (F, F) ソート済みの配列に対して二分検索を行い、与えられた値と同じものがあればtrueを返す
equal_range() (F, F) ソート済みの配列に対して、与えられた値と同じ値を持つ範囲を返す
includes() (I, I), (I, I) ソートされた配列同士を比較し、後者の配列のすべての要素が含まれていればtrueを返す
inplace_marge() (B, B, B) 前半と後半がそれぞれソートされた配列マージソートする
lower_bound() (F, F) ソート済みの配列に対して、与えられた値と同じかそれより大きい最初の要素の位置を返す
make_heap() (R, R) 与えられた配列を並べ替え、ヒープ化(親>子となる木構造)する
merge() (I, I), (I, I), O 2つのソート済み配列をマージソートして新しい配列に結果を書き出す
next_permutation() (B, B) 配列を辞書順に並び替える
nth_element() (R, R, R) 最初の状態のn番目の要素よりも大きい値の集合を前に、小さい値の集合を後ろに集める
partial_sort() (R, R, R) 前半部分に小さい要素を集めてソートする。後半部分は不定
partial_sort_copy() (I, I), (R, R) 配列の要素のうち、小さいものから別の配列にコピーする
partition() (B, B) 条件に合う要素を配列の前半に集める
prev_permutation() (B, B) 配列を辞書の反対(降順)に並び替える
pop_heap() (R, R) ヒープ化された配列の先頭の最大値の要素を削除して、ヒープを再構築する
push_heap() (R, R) ヒープ化された配列の最後尾に追加された要素を加えてヒープを再構築する
set_difference() (I, I), (I, I), O ソート済みの2つの配列の差集合を他の配列にコピーする
set_intersection() (I, I), (I, I), O ソート済みの2つの配列の積集合を他の配列にコピーする
set_union() (I, I), (I, I), O ソート済みの2つの配列の和集合を他の配列にコピーする
set_symmetric_difference() (I, I), (I, I), O ソート済みの2つの配列のどちらか一方にのみ存在する要素を他の配列にコピーする
sort() (R, R) 配列をソートする
sort_heap() (R, R) ヒープ化された配列をソートする
stable_partition() (B, B) 条件に合う要素を、最初の順序を守りながら前半に集める
stable_sort() (R, R) 配列を、最初の順序を守りながらソートする
upper_bound() (F, F) ソート済みの配列に対して、与えられた値より大きい最初の要素の位置を返す