我需要一种有效的方法来根据百分比选择选项。根据百分比选择选项
例如,假设我们有四种颜色:黑色,蓝色,红色和白色。
现在,我要创造充满颜色数组,但我需要基于以下百分比来选择他们:
Black - 80% chance of selection
Blue - 70% chance of selection
Red - 30% chance of selection
White - 5% chance of selection
我认为每一个1到100之间分配范围颜色,然后生成一个随机数之间。然而,这意味着所有颜色的百分比必须加起来达到100%,这可能不是真的可以避免的。
代码没有必要,但会喜欢一些可以通过JavaScript实现的算法。
编辑: 根据Patrice Levesque's的答案,我创建了this test。虽然我没有验证它的统计数据,但它直观地代表了我所追求的。像往常一样,我过度考虑了这个问题。其他答案是值得欢迎的。
你的初始数组有多长? – karthikr
@ karthikr可能是6 x 6格或6 x 8. –