現在、私は非常に非効率的であるように要素ごとにスワップする反復メソッドを使用しています。 2つの2D配列を一定時間で入れ替えることは可能ですか?Cで一定時間に2つの行列を入れ替える方法は?
int a[20][100];
int b[20][100];
私はO(1)にa
& b
を交換したいと思います。
さらに、b
からa
に上書きしたい場合は、同じソリューションを適用できますか?
以下は、 'a'を 'b'で繰り返し使用するコードです。コードの下
はBと上書きするために使用されます。以下は
for(x = 0;x<row;x++){
for(y=0;y<col;y++){
a[x][y] = b[x][y];
}
}
を私はaと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
私はswap()をC++で使ってみました。しかし、それは "マッチング機能がない"と不平を言っていました。私はスワップ(a、b)を使った。 – user3243499