目前,我正在使用交換元素的迭代方法,這看起來效率很低。是否有可能在同一時間交換兩個二維數組?如何在C中定時交換兩個矩陣?
int a[20][100];
int b[20][100];
我想交換a
& b
在O(1)。
此外,如果我只想覆蓋b
至a
,可以應用相同的解決方案嗎?
下面是我用來迭代地用'b'覆蓋'a'的代碼。
下面的代碼是用來用b來覆蓋:
for(x = 0;x<row;x++){
for(y=0;y<col;y++){
a[x][y] = b[x][y];
}
}
下面是我用來交換一個代碼和B:
for(x = 0;x<row;x++){
for(y=0;y<col;y++){
temp = a[x][y];
a[x][y] = b[x][y];
b[x][y] = temp;
}
}
C或C++?選一個! –
會交換指針是否有效的解決方案? – CIsForCookies
我嘗試在C++中使用swap()。但它抱怨「沒有匹配的功能」。我用swap(a,b); – user3243499