是否有一種簡單的方法可以互相交換數組的各部分(塊)?也就是說,我有一個數組:在C++中相互交換數組的各個部分
array[0] = 1;
array[1] = 2;
array[2] = 3;
array[3] = 4;
array[4] = 5;
array[5] = 6;
array[6] = 7;
array[7] = 8;
和被叫swapSections(startX, endX, startY, endY)
其幾乎給出這些值從我的示例交換出通過endX - startX
與值從StartY
到endY
的範圍內確定的值的範圍,所以功能。 ..
如果x range = 2
startX = 0
和和y range = 3
和startY = 5
,它將使陣列[0]和陣列[1]到陣列[5]和數組[6]是,然後將數組[7]數組後[ 6],把其他所有東西都推下去。我不知道該如何解決這個問題,而且我正在將內存複製到臨時陣列,但我認爲有更好的方法來做到這一點。 (順便說一句,從我的例子中,最終結果將是):
array[0] = 6;
array[1] = 7;
array[2] = 8;
array[3] = 3;
array[4] = 4;
array[5] = 5;
array[6] = 1;
array[7] = 2;
爲什麼不做你自己的功課,然後你可能會學到一些東西?這就是我想說的。 –
@Ed我試着做我的功課,但沒有成功,所以我發佈。 – nyaan
@nyaan請發佈您到目前爲止嘗試過的內容。 – balki