把数组按照元素个数由多到少排序,例如数组:[1,2,5,3,2], 排序后,输出[2,2,1,5,3]。 c++程序实现
时间: 2023-10-16 10:08:23 浏览: 77
maopaopaixu.zip_由大到小排列
可以使用标准库中的`sort`函数和自定义比较函数来实现:
```c++
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
bool cmp(int a, int b) {
return a > b; // 返回a是否大于b,即按照元素个数由多到少排序
}
int main() {
vector<int> arr = {1, 2, 5, 3, 2};
sort(arr.begin(), arr.end(), cmp); // 排序
// 输出排序后的数组
for (int i = 0; i < arr.size(); i++) {
cout << arr[i] << " ";
}
cout << endl;
return 0;
}
```
输出结果为:`2 2 1 5 3`。
阅读全文