c++

如何在C++中使用less进行排序

小樊
81
2024-09-14 09:24:46
栏目: 编程语言

在C++中,std::sort()函数可以用于对容器(如vector、array等)进行排序

#include<iostream>
#include<vector>
#include<algorithm> // 包含 std::sort() 和 std::less<>

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

    // 使用 std::less<> 对 numbers 进行升序排序
    std::sort(numbers.begin(), numbers.end(), std::less<int>());

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

    return 0;
}

上述代码首先定义了一个包含整数的std::vector。然后,我们使用std::sort()函数对其进行排序。std::sort()函数接受三个参数:要排序的范围的起始迭代器、结束迭代器和一个比较函数。在这里,我们使用std::less<int>()作为比较函数,表示按照升序排列。

运行此程序将输出排序后的整数序列:1 2 3 4 5

注意:如果你想按降序排列,可以使用std::greater<>代替std::less<>。例如:

std::sort(numbers.begin(), numbers.end(), std::greater<int>());

这将按降序对numbers进行排序。

0
看了该问题的人还看了