Knuth 洗牌算法的Java代码
时间: 2024-05-08 20:20:50 浏览: 85
java洗牌代码
Knuth 洗牌算法,也称 Fisher–Yates 洗牌算法,是一种随机打乱一个数组的算法。下面是 Java 代码实现:
```java
import java.util.Random;
public class KnuthShuffle {
public static void shuffle(int[] nums) {
Random rand = new Random();
for (int i = nums.length - 1; i > 0; i--) {
int j = rand.nextInt(i + 1);
int temp = nums[i];
nums[i] = nums[j];
nums[j] = temp;
}
}
}
```
使用方法:
```java
int[] nums = {1, 2, 3, 4, 5};
KnuthShuffle.shuffle(nums);
```
以上代码会随机打乱数组 nums 中的元素。
阅读全文