gpt4 book ai didi

java - 加载骰子(加权随机)

转载 作者:行者123 更新时间:2023-12-01 13:13:33 25 4
gpt4 key购买 nike

我需要根据概率选择一种可能的输出。可以说我有

p[1]=20%
p[2]=40%
p[3]=15%
p[4]=25%

p[] 的大小是一个变量(在本例中为 4),我知道它们的总和为 100%。如何根据概率从p中选择一个元素?

最佳答案

最简单的使用方法是使用 Random.nextFloat()方法,然后检查0-1之间的随机数属于哪个范围。

根据您的问题评论,您可能想要更多类似这样的内容:

Random r = new Random();
p[0]=0.2;
p[1]=0.4;
p[2]=0.15;
p[3]=0.25;

float myVal = r.nextFloat();
float probSum = 0.0;

for (int i = 0; i < p.length; p++) {
probSum += p[i];
if (myVal <= probSum) {
return i;
}
}
return p.length-1;

显然你可以美化它,但这是一个应该可行的一般想法。

关于java - 加载骰子(加权随机),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22646328/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com