如何随机洗牌以使所有元素都不在其原始位置?
换句话说,给定具有不同元素的列表A,我想生成它的排列B,以便它
>这种排列是随机的
>和每个n,a [n]!= b [n]
例如
a = [1,2,3,4]
b = [4,1,2,3] # good
b = [4,2,1,3] # good
a = [1,2,3,4]
x = [2,4,3,1] # bad
我不知道这种排列的正确术语(它是“总”吗?)因此很难用谷歌搜索.正确的术语似乎是“紊乱”.
解决方法:
这种排列称为紊乱.在实践中,您可以尝试随机排列直到达到紊乱,当’n’增长时,它们的比率接近’e’的倒数.