c++

c++中vector容器如何排序

小亿
115
2024-06-04 09:43:24
栏目: 编程语言

在C++中,可以使用STL中的sort函数对vector容器进行排序。sort函数位于头文件中,其用法如下所示:

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

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

    // 对vector容器进行升序排序
    std::sort(vec.begin(), vec.end());

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

    return 0;
}

以上示例代码中,我们先定义了一个包含一些整数的vector容器,然后使用sort函数对其进行升序排序。排序后的结果将会按照从小到大的顺序输出。如果想要进行降序排序,可以在sort函数中传入第三个参数,指定排序规则:

// 对vector容器进行降序排序
std::sort(vec.begin(), vec.end(), std::greater<int>());

以上代码中,我们使用std::greater()函数对象进行降序排序。另外,也可以自定义排序规则,例如:

// 自定义排序规则:按照数字的个位数进行排序
bool customSort(int a, int b) {
    return a % 10 < b % 10;
}

// 使用自定义排序规则对vector容器进行排序
std::sort(vec.begin(), vec.end(), customSort);

通过以上方法,我们可以使用sort函数对vector容器按照自定义规则进行排序。

0
看了该问题的人还看了