首先,我有一個由數據填充的名爲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]