使java随机数生成朝某个数字倾斜
在Java中,如何生成一个随机数,但使该随机数向特定数字倾斜。例如,我想生成一个介于1和100之间(包括1和100)的数字,但我希望该数字向75倾斜。但我仍然希望得到范围内其他数字的可能性,但我更希望得到接近75的数字,而不是仅仅得到整个范围内的随机数。谢谢
你可以在下面搜索框中键入要查询的问题!
在Java中,如何生成一个随机数,但使该随机数向特定数字倾斜。例如,我想生成一个介于1和100之间(包括1和100)的数字,但我希望该数字向75倾斜。但我仍然希望得到范围内其他数字的可能性,但我更希望得到接近75的数字,而不是仅仅得到整个范围内的随机数。谢谢
# 1 楼答案
试试http://download.oracle.com/javase/6/docs/api/java/util/Random.html#nextGaussian()
选择一个类似于10的STDEV,然后四处玩,直到你得到想要的发行版。不过,1和100的数量将略多于2或99。如果你想改变它下降的速度,你可以把高斯函数提高到一个幂
# 2 楼答案
问题有点老了,但如果有人想在不进行特殊案例处理的情况下执行此操作,您可以使用以下函数:
这些参数执行以下操作: