2012-01-28 69 views
0

我有一個整數(例如0,2,4,7)的數組。我想將數組中的每個值與數組中的另一個值結合起來,以便應該有每個組合可能(例如[0,2],[0,4],[0,7],但也可以是[2,0 ],[4,0]和[7,0],其他值相同)。什麼是最好和最資源(處理)有效的方式來實現呢?想要將數組的值相互組合並顯示它們

謝謝

回答

2

迭代ji+1

for (int i = 0; i < arr.length; i++) { 
    for (int j = i+1; j < arr.length; j++) { 
    System.out.println("["+arr[i] +","+arr[j]+"]"); 
    System.out.println("["+arr[j] +","+arr[i]+"]"); 
    } 
} 

示例: enter image description here

1
int[] arr = [...]; 

for(int i : arr){ 
    for(int j : arr){ 
    // Do something with both "i and j". 
    } 
} 

在加工點(即「做什麼」的評論),你可以做的打印結果,或添加組合結果到一個新的數組或集合一樣簡單。 (後來的將是性能方面的原因不太理想的,因爲這需要所有可能的組合將被存儲在內存中的一次 - 而不是處理結果爲你生成)

相關問題