1. 程式人生 > >演算法導論 5.3-4

演算法導論 5.3-4

Armstrong教授建議使用下列過程來產生均勻隨機排列:PERMUTE-BY-CYCLIC(A)1 n <- length[A]2 offset <- RANDOM(1,n)3 for i <- 1 to n4 do dest <- i + offset5 if dest > n6 then dest <- dest - n7 B[dest] <- A[i]8 return B證明任意元素A[i]出現在B中任何特定位置的概率都是1/n。然後通過證明其結果不是均勻隨機排列來表明Armstrong教授錯了。