C++ STLを使用してペアをソートする方法


C++のSTLには、ペアをソートするための便利な関数がいくつか用意されています。その中でも、std::sort関数を使用する方法を紹介します。

まず、ペアのベクトルを作成します。以下は、整数のペアを要素とするベクトルの例です。

#include <iostream>
#include <vector>
#include <algorithm>
int main() {
    std::vector<std::pair<int, int>> pairs = {{1, 4}, {3, 2}, {5, 6}, {2, 1}};
    // ペアのベクトルをソートします
    std::sort(pairs.begin(), pairs.end());
    // ソート後のペアを出力します
    for (const auto& pair : pairs) {
        std::cout << "(" << pair.first << ", " << pair.second << ")" << std::endl;
    }
    return 0;
}

上記のコードでは、std::sort関数を使用してpairsベクトルをソートしています。std::sort関数は、デフォルトではペアの最初の要素を基準にソートします。

ソート後のペアを出力するために、ループを使用して各ペアを表示しています。

出力結果は次のようになります:

(1, 4)
(2, 1)
(3, 2)
(5, 6)

このように、std::sort関数を使用することで、C++のSTLを利用してペアをソートすることができます。この方法を応用すれば、他のデータ型のペアをソートすることも可能です。