import java.util.Random;
public class ShuffleCards {
public static void main(String[] args) {
int[] array = new int[]{1, 2, 3};
new ShuffleCards().shuffleCards(array);
}
public void shuffleCards(int[] arr) {
//费雪耶兹置乱算法
//每次生成的随机交换位置:
for (int i = arr.length - 1; i > 0; i--) {
//随机数生成器,范围[0, i]
int rand = (new Random()).nextInt(i + 1);
int temp = arr[i];
arr[i] = arr[rand];
arr[rand] = temp;
}
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
}
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交