如何对二维矢量进行排序
How to sort a 2d Vector
我有一个向量L,其中包含每个向量有2个双精度的向量。我想按第一个元素对L中的向量进行排序。
vector<vector<double>> L;
我尝试使用std::sort算法和一个自己编写的比较函数,如下所示:
bool compare(const vector<double> &v1, const vector<double> &v2)
{
return v1[0] < v2[0];
}
void out_2d_vecotr_as_value_pairs(vector<vector<double>> &L)
{
L = sort(L.begin(), L.end(), compare);
...
}
但是我在调用sort((函数的行中遇到了一个我不理解的错误:
projet.cc:234:38: error: no match for ‘operator=’ (operand types are ‘std::vector<std::vector<double> >’ and ‘void’)
感谢您的帮助
std::sort不返回任何内容。矢量在适当的位置进行排序。
更换
L = sort(L.begin(), L.end(), compare);
通过
sort(L.begin(), L.end(), compare);
相关文章:
- 为什么指针在对二维数组进行排序时无法正常工作?
- 使用 std::sort 对二维 c 数组进行排序
- 如何对二维矢量进行排序
- 根据类中另一个对象 C++ 的值对类中的二维对象进行排序并赋予值
- 排序后如何将二维数组重置为原始形式
- 在一维数组中对二维进行排序
- 对角度二维数组进行排序
- 这是用于对二维数组进行排序的最佳方法
- 按一列对二维数组进行气泡排序
- 排序二维结构阵列
- 根据用户输入对二维数组进行排序和打印
- C++:二维指针数组排序:选择排序不适用于某些实例
- 基于另一个二维向量对二维向量进行排序
- 对 C++ 中的二维数组进行排序
- 二维数组中的插入排序
- 在C++中对二维数组使用插入排序函数
- 排序函数不适用于c++中的二维向量
- 如何在c++中对二维数组进行排序
- c++按列排序二维向量
- 排序二维数组不触及第二次元