已知Random(0,1)
函數,它是一個統一的隨機函數,意思是它將給出0或1,概率爲50%。執行Random(a, b)
,只打電話Random(0,1)
生成隨機(a,b)調用Random(0,1)
我到目前爲止是,把範圍a-b在0基於數組,然後我有索引0,1,2 ... b-a。
然後調用RANDOM(0,1)
b-a次,將結果作爲生成的idx求和。並返回元素。
但是由於書中沒有答案,我不知道這種方式是正確的還是最好的。如何證明返回每個元素的概率完全相同,並且是1/(b-a+1)
?
什麼是正確/更好的方法來做到這一點?
可能的重複:[如何使用錯誤的生成器獲取隨機數](http://stackoverflow.com/questions/7694933/how-to-get-random-numbers-with-the-wrong-generator) – PengOne