ホームページ > バックエンド開発 > C++ > C++でソートを使用する方法

C++でソートを使用する方法

下次还敢
リリース: 2024-05-01 10:45:24
オリジナル
1021 人が閲覧しました

C の sort() 関数は、シーケンス内の要素を昇順に並べ替えます。構文は、sort(first, last, comp) です。パラメータには、first (シーケンス内の最初の要素を指す反復子)、last (シーケンス内の最後の要素の後の位置を指す反復子)、comp (オプションのコンパレータ、デフォルトは昇順) が含まれます。 sort() 関数はシーケンスを変更しますが、値は返しません。カスタム コンパレータを使用すると、並べ替え順序をカスタマイズできます。

C++でソートを使用する方法

C での sort() 関数の使用

sort() 関数は、A をソートするために C 標準ライブラリで使用されます。シーケンス (配列やベクトルなど) の要素を昇順に並べ替える関数。要素を正しい位置に移動することでシーケンスを操作し、要素が何らかの順序で並べ替えられるようにします。

構文

<code class="cpp">void sort(InputIterator first, InputIterator last, Compare comp = less<T>());</code>
ログイン後にコピー

パラメータ

  • first: は、要素のシーケンス反復子。
  • last: シーケンスの最後の要素の 1 つ後の位置を指す反復子。
  • comp: 要素の順序を決定するために使用されるオプションのコンパレータ。デフォルトはless() (要素を昇順にソートします)。

戻り値

sort() 関数は値を返しませんが、参照によってシーケンスを変更します。

#例

配列の並べ替え

<code class="cpp">int arr[] = {5, 3, 1, 2, 4};
int n = sizeof(arr) / sizeof(arr[0]);

sort(arr, arr + n);</code>
ログイン後にコピー

ベクトルの並べ替え

<code class="cpp">vector<int> v = {5, 3, 1, 2, 4};

sort(v.begin(), v.end());</code>
ログイン後にコピー

カスタム ソート コンパレータ

sort() 関数を使用すると、カスタム コンパレータを提供して並べ替え順序をカスタマイズできます。文字列を降順に並べ替える例を次に示します。

<code class="cpp">struct compare_strings {
    bool operator() (const string& a, const string& b) {
        return a > b;
    }
};

vector<string> words = {"apple", "banana", "cherry"};

sort(words.begin(), words.end(), compare_strings());</code>
ログイン後にコピー
独自のコンパレータを提供することにより、任意のロジックでシーケンスを並べ替えることができます。

以上がC++でソートを使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート