随机布尔数组,包含10个元素,其中3个为3

Eri*_* S. 1 c# arrays random boolean list

我一直在搜索论坛和谷歌,但我认为我使用错误的关键词或我不明白解决方案.我正在寻找的是创建一个包含10个随机布尔元素的列表或数组,我可以决定1或2或3或4等元素为True.订单必须是随机的,最后我想要一个这样的结果,例如(0.3次机会):

False
True
False
False
True
False
False
False
True
False
Run Code Online (Sandbox Code Playgroud)

日Thnx.

oer*_*ens 5

为什么不按照已知的顺序创建它们(true,true,true,false,....)然后使用一个好的算法来改变它们?

一个选择是好老的Fisher-Yates洗牌

  • @Egalitarian这个问题与我的建议有什么不同?结果正是OP要求的:一个带有N`true`值的随机列表.我只是建议采取两个步骤来创建它. (2认同)