温馨提示×

C++ sort lambda怎样实现降序排序

c++
小樊
102
2024-07-19 02:18:37
栏目: 编程语言

在使用lambda表达式进行降序排序时,可以使用std::sort函数并传入一个lambda表达式作为排序准则。下面是一个示例代码,实现对一个vector容器中的元素进行降序排序:

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

int main() {
    std::vector<int> vec = {5, 2, 9, 1, 3};

    // 使用lambda表达式进行降序排序
    std::sort(vec.begin(), vec.end(), [](int a, int b) {
        return a > b; // 降序排序
    });

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

    return 0;
}

在上面的代码中,通过lambda表达式[](int a, int b) { return a > b; }指定了降序排序的准则,即如果a大于b则返回true,否则返回false。将这个lambda表达式传入std::sort函数中,就可以实现对vector容器中的元素进行降序排序。最终输出结果为9 5 3 2 1

0