其实道理很简单。假设你是体育老师,你要将班里52个孩子顺序打乱,你先将52个孩子排好队,然后你蒙着眼睛在队列里挑,每挑出一个孩子就把他放在一边,然后在剩下的51个孩子里再随机挑,如此反复,放到一边的孩子不就是随机的一队了。这种方法只要经过52次随机挑选,即可得到一个随机的不重复数的队列,而你的算法就不知道要经过多少次帅选了,越往后,你选到不重复的数的概率越小,比如52张牌最后一个数随机选中的概率只有1/52,如果你用这个方法将1-1000的数随机打乱的话,估计程序是会死循环的,因为最后一个数随机选中的概率只有1/1000.
能编个毛线衣吗?