我想制作一个算法,它会给我一些随机的数字,我不知道它们会是什么,但与此同时,更接近0
的数字必须是更有可能作为输出发生,而接近1
的那些必然不太可能。我想讨论线性和指数分布,所以请至少提供实现两者的提示。
我已经考虑并考虑过如何处理这个问题,但我仍然没有线索,所以任何指针都会受到赞赏。
注意:我不打算讨论,也不了解“真实”与“伪”随机性的复杂性......这与安全性或加密无关,为此我会只是使用Javascript的Math.random()
作为种子,这样我们就可以清楚地知道我在问什么了。
答案 0 :(得分:1)
var random = Math.pow(Math.random(), 2);
答案 1 :(得分:0)
看看泊松分布,可能你可以将它用于你自己的目的,本质上泊松分布不是确定性的,但它有一定的发生频率:维基百科有一个很好的介绍性信息:{{3} }
算法:
algorithm poisson random number (Knuth):
init:
Let L ← e−λ, k ← 0 and p ← 1.
do:
k ← k + 1.
Generate uniform random number u in [0,1] and let p ← p × u.
while p > L.
return k − 1.