首先,我有一个由数据填充的名为Myarray[51][4]
的int数组。将“矢量矢量”复制到“数组数组”中
对于基于的Myarray
第二列排序它,我用下面的代码(使用阵列转换成矢量的矢量:my_vector[51][4]
):
int Myarray [51][4];
vector< vector<int> > my_vector ;
for(const auto& row : Myarray)
my_vector.push_back(vector<int>(begin(row), end(row))) ;
sort(begin(my_vector), end(my_vector),
[](const vector<int>& a, const vector<int>& b) { return a[1] < b[1] ; }) ;
此代码已排序my_vector
。现在我想再次将已排序的向量复制到Myarray
中,以将它用作维数为[51] [4]的整数数组。我该怎么做?
只是一个简单的问题:你一定要第二个元素比较,而不是第一人? – stefan
为什么不直接对数组进行排序呢? –
'int myarray [51] [4]; sort(begin(Myarray),end(Myarray), [](int(&a)[4],int(&b)[4]){return a [1]