sort从大到小排序 C++
时间: 2023-09-24 17:04:18 浏览: 131
在 C++ 中,您可以使用`sort()`函数结合自定义比较函数来将数组从大到小进行排序。以下是一个示例代码:
```cpp
#include <iostream>
#include <algorithm>
using namespace std;
bool compare(int a, int b) {
return a > b;
}
int main() {
int arr[] = {5, 2, 7, 1, 9};
int n = sizeof(arr) / sizeof(arr[0]);
sort(arr, arr + n, compare);
cout << "从大到小排序后的数组:";
for (int i = 0; i < n; i++) {
cout << arr[i] << " ";
}
return 0;
}
```
运行该代码,输出结果将会是:9 7 5 2 1,即将数组从大到小进行了排序。在自定义的比较函数中,我们使用了`a > b`的比较方式来实现从大到小排序。
相关问题
c++ sort从大到小
要使用C++的sort函数将数组从大到小排序,可以使用以下代码:
```cpp
#include <iostream>
#include <algorithm>
using namespace std;
bool cmp(int x, int y) {
return x > y;
}
int main() {
int arr[] = {2, 4, 5, 3, 1};
sort(arr, arr + 5, cmp); for(int i = 0; i < 5; i++) {
cout << arr[i << " ";
}
return 0;
}
```
在这个例子中,我们定义了一个比较函数`cmp`,使得排序的结果是从大到小。然后,我们调用sort函数,传入数组的起始地址和结束地址(`arr`和`arr + 5`),以及比较函数`cmp`。最后,我们使用for循环打印排序后的数组。
c++ sort函数由小到大排序
以下是使用C++的sort函数进行由小到大排序的例子:
```cpp
#include <iostream>
#include <algorithm>
using namespace std;
bool cmp(int a, int b) {
return a < b;
}
int main() {
int arr[] = {5, 2, 8, 4, 7};
int len = sizeof(arr) / sizeof(arr[0]);
sort(arr, arr + len, cmp);
for (int i = 0; i < len; i++) {
cout << arr[i] << " ";
}
return 0;
}
```
输出结果为:2 4 5 7 8
其中,sort函数的第一个参数为待排序数组的起始地址,第二个参数为待排序数组的结束地址的下一个地址,第三个参数为排序准则,如果不写则默认从小到大排序。在本例中,我们自定义了一个cmp函数,用于实现从小到大排序。