2

在 Java 中,我想生成一个从 1 到 100 的随机数,该随机数可以基于刻度的任一端,同时仍然有可能来自另一端的数字仍然被“滚动”。

澄清一下,在正常情况下,在1 - 100 的卷数上,平均值为 50,但在某些情况下,我希望平均值下降到 25%。 但是仍然有机会产生 100%。

我看过 Random.nextGaussian,它确实改变了钟形曲线,但对于低端值,这消除了高端可能性。

我应该使用什么公式或公式组合?

Bell_curve_with_shift

在此处输入图像描述

4

1 回答 1

4
  1. 计算出您想要的确切分布形式。

  2. 计算该分布的分位数函数。

  3. 使用适当的生成器在 [0, 1) 中绘制均匀随机数。

  4. 那是分位数函数的输入。

生成的数字将根据您的需要分发。

于 2016-01-05T07:53:03.577 回答