小编典典

从列表中选择 N 个随机元素在 C# 中

all

我需要一个快速算法来从通用列表中选择 5 个随机元素。例如,我想从 a 中获取 5 个随机元素List<string>


阅读 121

收藏
2022-07-14

共1个答案

小编典典

遍历每个元素,使选择的概率=(需要的数量)/(剩下的数量)

因此,如果您有 40 个项目,第一个将有 5/40 的机会被选中。如果是,则下一个有 4/39 的机会,否则有 5/39 的机会。到最后,您将拥有 5
件物品,而且通常您会在此之前拥有所有物品。

2022-07-14