c++的sort函数排序二维数组
时间: 2023-09-21 16:09:12 浏览: 490
对于排序二维数组,可以使用C++的sort函数结合自定义的比较函数来实现。下面是一个示例代码:
```cpp
#include <iostream>
#include <algorithm>
#include <vector>
bool compare(const std::vector<int>& a, const std::vector<int>& b) {
return a[0] < b[0]; // 以第一列进行排序
}
int main() {
std::vector<std::vector<int>> arr = {{2, 1}, {3, 4}, {1, 3}, {4, 2}};
std::sort(arr.begin(), arr.end(), compare);
for (const auto& row : arr) {
for (const auto& num : row) {
std::cout << num << " ";
}
std::cout << std::endl;
}
return 0;
}
```
在上述代码中,我们定义了一个自定义的比较函数`compare`,该函数用于比较两个二维数组的元素。在这个示例中,我们使用了二维数组的第一列进行排序。然后,我们使用`std::sort`函数对二维数组进行排序,并传入自定义的比较函数作为参数。最后,我们打印排序后的二维数组。
输出结果为:
```
1 3
2 1
3 4
4 2
```
这样,我们就可以使用C++的sort函数对二维数组进行排序了。你也可以根据需要修改自定义的比较函数来实现不同的排序方式。
阅读全文