次の質問のコードを書きましたが、機能しません。乱数を取得しますが、シャッフル メソッドでは乱数がシャッフルされません。助けてくれませんか?
for( each index i)
choose a random index j where j>=i.
swap the elements at index i and j.
私のコードは次のとおりです。
public static void shuffle(int[] a){
for( int i = 0; i < a.length-1; i++){
int range = a.length;
int j = (int) (Math.random() * range);
swap(a, i, j);
}
}
public static void swap(int[] array, int i, int j){
if (i != j) {
int temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}