std::sort设置倒序排放规则
时间: 2024-03-19 21:38:27 浏览: 67
在C++的STL中,std::sort函数可以用于对容器中的元素进行排序。默认情况下,std::sort函数按照升序排列元素。如果要设置倒序排列规则,可以使用自定义的比较函数作为std::sort函数的第三个参数。
下面是一个示例,演示如何使用std::sort函数设置倒序排列规则[^1]:
```cpp
#include <iostream>
#include <vector>
#include <algorithm>
// 自定义比较函数,用于设置倒序排列规则
bool compare(int a, int b) {
return a > b;
}
int main() {
std::vector<int> nums = {5, 2, 8, 1, 9};
// 使用自定义的比较函数进行倒序排列
std::sort(nums.begin(), nums.end(), compare);
// 输出排序结果
for (int num : nums) {
std::cout << num << " ";
}
std::cout << std::endl;
return 0;
}
```
输出结果为:
```
9 8 5 2 1
```
相关问题
std::sort倒序排放
以下是使用std::sort函数进行倒序排列的示例代码[^1]:
```cpp
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
int arr[] = {5, 2, 9, 1, 7};
int n = sizeof(arr) / sizeof(arr[0]);
// 使用std::sort函数进行倒序排列
sort(arr, arr + n, greater<int>());
// 输出排序后的数组
for (int i = 0; i < n; i++) {
cout << arr[i] << " ";
}
return 0;
}
```
输出结果为:9 7 5 2 1
std:: 容器倒序
你可以使用`std::reverse`算法来倒序一个容器。这个算法需要两个迭代器参数,表示容器的起始和位置。下面是一个示例代码:
```cpp
#include <iostream>
#include <vector>
#include <algorithm>
int main() {
std::vector<int> numbers = {1, 2, 3, 4, 5};
std::reverse(numbers.begin(), numbers.end());
for (const auto& num : numbers) {
std::cout << num << " ";
}
std::cout << std::endl;
return 0;
}
```
输出结果将是:`5 4 3 2 1`。在这个例子中,我们使用`std::reverse`将`numbers`容器中的元素倒序排列。然后,我们使用循环打印出倒序后的元素。你可以根据自己的需求替换容器的类型和元素类型。
阅读全文