假设我想从 1-10
中随机选择
一个数字,但每个数字都有权重。
1 - 15% chance
2 - 15% chance
3 - 12% chance
4 - 12% chance
5 - 10% chance
6 - 10% chance
7 - 8% chance
8 - 8% chance
9 - 5% chance
10 - 5% chance
我将如何在 PHP
中对此进行编码?
最佳答案
我假设您的百分比总和为 100%?
用
构建一个数组15 times a '1' value,
15 times a '2' value,
...
10 times a '6' value,
8 times a '7' value,
...
5 times 1 '10' value
您最终会得到一个包含 100 个元素的数组。
随机选择一个元素(并将其从数组中弹出)。
关于PHP选择带权重的随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10559133/