随机置换数组

时间:2014-12-31 21:21:17

标签: arrays algorithm

这是基于Cormen等人的算法书中的一个问题。它们提供了随机置换数组的算法。它有点像({3}}

的第93页
RANDOMIZE-IN-PLACE(A)
1 n = A.length
2 for i = 1 to n
3 swap A[i] with A[RANDOM(i, n)]
然后,他们证明这会以相同的概率产生所有排列。 在练习中,他们会问如果他们用A [RANDOM(1,n)]替换第3行会发生什么。所有排列仍然可能同样可能吗?我猜不到因为循环不变不再满足。但是在这种新算法中哪种排列更有可能?

0 个答案:

没有答案