c++で降順でソートする方法は?

C++では、STL(Standard Template Library)のsort関数を使用して降順に並べ替えることができます。

以下はサンプルコードです。

#include <iostream>
#include <algorithm>
#include <vector>

// 比较函数,用于指定排序方式
bool compare(int a, int b) {
    return a > b; // 降序排序
}

int main() {
    std::vector<int> nums = {5, 2, 8, 3, 1};
  
    // 使用sort函数排序,并传入比较函数
    std::sort(nums.begin(), nums.end(), compare);

    // 输出排序结果
    for (int num : nums) {
        std::cout << num << " ";
    }

    return 0;
}

上記のコードでは、compareという比較関数を定義して、sort関数が降順でソートされるようにしました。main関数では、numsというベクターコンテナを作成し、ソートするための数字を格納しました。その後、sort関数を使用してnumsをソートし、パラメータとしてcompare関数を渡しました。最後に、ループを使用してソート後の結果を出力しました。

出力結果は、8 5 3 2 1となり、大きい順に並べられています。

bannerAds