アルゴリズムの場合、配列のコピーが必要です。オリジナルと温度をお持ちください。 "turn"を処理する必要があるので、tempを使用することはできますが、その状態から開始する必要があります。Java配列の速度:コピー&再使用または新規作成
各ターンの後、テンポラリーで行われます(ただし、次の反復のためにもう一度必要です)。一時的に元のものにコピーしたり、元のものを一時的なものに割り当てて、一時的な新しい配列を作成するほうがよいでしょうか?サイズは5x5〜300x300 2D int配列になります。
//int [][]orig //initialized elsewhere
int [][]newData = new int[orig.length][orig[0].length];
for (int i = 0; i < turns; i++) {
proc1Turn(orig, newData);
//after 1 turn copy newData to orig OR assign to orig
//and create new array for newData?
}
どちらが速くなるのでしょうか。 JVMのために十分なRAM /フリー・ヒープがあれば、それはほぼ同じです(どんなシステムでも)?
プロファイリング/タイムアウトしたときの結果はどこにありますか? –
なぜダウン投票?みんなに明らかな配列スワップか、質問は明確ではないのですか? – tgkprog