c++数组排序,举个例子说明
时间: 2023-08-10 15:02:20 浏览: 51
当你需要对C++数组进行排序时,你可以使用标准库中的 `std::sort` 函数。这个函数可以对数组进行升序或降序排序。下面是一个示例代码,展示了如何使用 `std::sort` 对整型数组进行升序排序:
```cpp
#include <iostream>
#include <algorithm> // 包含了 std::sort 函数
using namespace std;
int main() {
int arr[] = {5, 2, 9, 1, 7}; // 定义一个整型数组
int n = sizeof(arr) / sizeof(arr[0]); // 计算数组的长度
sort(arr, arr + n); // 使用 std::sort 对数组进行升序排序
cout << "升序排序后的数组:";
for (int i = 0; i < n; i++) {
cout << arr[i] << " ";
}
cout << endl;
return 0;
}
```
运行以上代码,输出将是:`升序排序后的数组:1 2 5 7 9`。
在上述示例中,我们首先定义了一个整型数组 `arr`,然后通过 `sizeof(arr) / sizeof(arr[0])` 计算数组的长度,以便在 `std::sort` 函数中指定排序范围。然后,我们使用 `std::sort` 函数对数组进行升序排序。最后,我们使用一个循环打印排序后的数组。
相关问题
c++ 数组sort
引用中提供了一个例子,展示了如何对char数组进行排序。在这个例子中,使用了sort函数来对数组c进行排序,默认以字典序进行排序。sort函数需要包含头文件<algorithm>,并且使用了命名空间std。使用sort函数需要传入两个参数,第一个参数是待排序的数组的起始位置,第二个参数是数组的结束位置。在这个例子中,sort(c,c+6)表示对数组c的前6个元素进行排序。排序后,通过循环遍历数组并输出排序结果。所以对于c数组的排序,可以参考以下代码:
#include <stdio.h>
#include <algorithm>
using namespace std;
int main(){
char c[]={'I','L','O','V','E','U'};
sort(c,c+6);
for(int i=0;i<6;i++){
printf("%c",c[i]);
}
return 0;
}
输出结果为"EILOUV"。这是因为数组c中的元素按照字典序进行了排序。
c++中sort排序二维数组vector
在C++中,可以使用sort函数对二维数组vector进行排序。sort函数的第一个参数是要排序的vector的起始位置,第二个参数是结束位置,第三个参数是一个lambda表达式,用于定义排序规则。lambda表达式中可以使用vector的下标来访问二维数组中的元素,从而实现按照指定元素进行排序。例如,如果要按照二维数组中第二个元素进行降序排序,可以使用以下代码:
```
vector<vector<int>> v = {{1,5}, {4,4}, {5,3}, {3,2}};
sort(v.begin(), v.end(), [](const vector<int>& a, const vector<int>& b) {
return a[1] > b[1];
});
```
这里的lambda表达式中,a和b分别表示要比较的两个vector,a和b分别表示它们的第二个元素,返回值为bool类型,表示a是否应该排在b的前面。在这个例子中,返回a > b表示按照第二个元素进行降序排序。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)