C++中sort函数
时间: 2023-09-02 11:10:27 浏览: 109
sort函数是C++标准库中的一个排序函数,它用于对给定范围内的元素进行排序。sort函数可以接受一个起始迭代器和一个结束迭代器,将范围内的元素按照默认的升序顺序进行排序。
使用sort函数的基本语法如下:
```cpp
#include <algorithm>
sort(startIterator, endIterator);
```
其中,startIterator和endIterator分别是范围的起始迭代器和结束迭代器。排序后,范围内的元素将按照升序排列。
除了默认的升序排序,sort函数还可以接受一个可选的比较函数作为参数,用于指定排序的顺序。比较函数应该是一个可调用对象(如函数指针、函数对象、Lambda表达式等),并且满足严格弱排序的要求。
以下是一个使用sort函数进行降序排序的示例:
```cpp
#include <algorithm>
#include <vector>
#include <functional>
#include <iostream>
int main()
{
std::vector<int> nums = {5, 2, 8, 1, 4};
std::sort(nums.begin(), nums.end(), std::greater<int>());
for (int num : nums) {
std::cout << num << " ";
}
return 0;
}
```
输出结果为:8 5 4 2 1,表示数组按照降序排列。
需要注意的是,sort函数对于自定义的数据类型,需要提供比较函数来告知排序的方式。比较函数应该返回bool类型的值,指示两个元素之间的顺序关系。
阅读全文