C++ sort排序二维数组
时间: 2024-06-21 07:03:23 浏览: 108
桶排序(二维数组)
C++中的sort函数可以用来对数组进行排序,可以使用这个函数对二维数组进行排序。当然,需要注意的是,如果要对二维数组进行排序,我们需要定义一个比较函数来告诉sort函数如何比较二维数组中的元素。
以下是一个示例代码,演示如何使用sort函数对二维数组按照第一列进行升序排序:
```
#include<iostream>
#include<algorithm>
using namespace std;
bool cmp(int* a, int* b){
return a < b;
}
int main(){
int a = {{2, 3}, {1, 4}, {5, 2}};
sort(a, a+3, cmp);
for(int i = 0; i < 3; i++){
for(int j = 0; j < 2; j++){
cout << a[i][j] << " ";
}
cout << endl;
}
return 0;
}
```
在上面的代码中,我们定义了一个名为cmp的比较函数,该函数接受两个指向一维数组的指针a和b。在函数体内部,我们只需要比较a和b指向的一维数组的第一个元素的大小即可。
接下来,在主函数中,我们声明了一个3*2的二维数组a,并初始化了其中的元素。然后,我们使用sort函数对a数组进行排序。注意,我们需要指定排序的起始位置和结束位置,因此第二个参数需要传入a,第三个参数需要传入a+3。最后,我们使用两层循环输出排序后的结果。
阅读全文