我被一个明显简单的问题困住了。我编写了一个子例程,它接受一个长度数组n
和另一个数字m
作为输入,然后输出一个大小m
为包含从原始数组中均匀随机选择的数字的数组。我可以传递replace=False
选项,然后输出数组中的数字总是不同的,因为原始数组中没有重复。我的问题是,我可以使用相同的例程随机打乱数组吗?乍一看,如果我输入m=n
. 问题是我不确定这是否会以相等的概率输出输入数组的所有可能排列(尽管如果不是,我会感到惊讶!)。如果这没有发生,我将为 Fisher-Yates shuffle 编写另一个例程。
问问题
32 次