当前位置:首页 C++ > 正文

C++中sort排序函数

作者:野牛程序员:2024-02-01 14:56:39 C++阅读 2789

C++中的sort排序函数用于对容器中的元素进行排序。它通常用于数组、向量(vector)、列表(list)等容器类型。sort函数可以按升序或降序排列元素,默认情况下按升序排列。

下面是sort函数的一般用法:

#include <algorithm> // 包含sort函数的头文件
#include <vector>    // 包含vector容器的头文件
#include <iostream>

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

    // 使用sort函数对向量vec进行升序排序
    std::sort(vec.begin(), vec.end());

    // 输出排序后的向量
    for (int num : vec) {
        std::cout << num << " ";
    }
    std::cout << std::endl;

    return 0;
}

这段代码将向量vec中的元素进行升序排序,并将结果输出到标准输出流中。

如果需要按照自定义的排序规则进行排序,可以提供一个比较函数作为sort函数的第三个参数。比较函数应该接受两个参数,并返回一个bool值,指示第一个参数是否小于第二个参数。例如:

bool compare(int a, int b) {
    // 自定义的比较函数,按照元素的绝对值进行排序
    return abs(a) < abs(b);
}

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

    // 使用自定义的比较函数对向量vec进行排序
    std::sort(vec.begin(), vec.end(), compare);

    // 输出排序后的向量
    for (int num : vec) {
        std::cout << num << " ";
    }
    std::cout << std::endl;

    return 0;
}

这段代码将向量vec中的元素按照它们的绝对值进行排序。

sort函数的时间复杂度通常为O(NlogN),其中N是要排序的元素数量。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击