设计一个洗牌算法
给定N张扑克牌和一个随机函数,设计一个洗牌算法
设计思路
利用随机函数产生的值作为交换元素下标
实现代码
public class Solution{ public void shuffle(int[] cards,n){ Random random = new Random(); int nextInt = random.nextInt(); int len = cards.length; for(int i=0;i<len;i++){ int nextInt = i+random.nextInt(len-i); int temp = cards[nextInt]; cards[nextInt] = cards[i]; cards[i] = temp; } } }