我一直在爲此尋找答案,但是我發現的所有討論都是用我不懂的語言,或者依賴於每個元素都有自己的權重的集合。加權隨機數生成C#
我想基本上只是得到一個0到10之間的隨機數,這是「中等加權」,因爲在5中比0和10多出現。基本上我一直在試圖找出一個算法,我可以給任何數字都是我定義的最小和最大值之間的「加權數字」,並且所有生成的數字將被適當加權。我知道這可能聽起來像「我不想考慮這件事,我只是坐下來等待別人這樣做」,但我一直在思考和尋找這個問題一個小時,我真的很失落:|那麼到底
,我想我可以打電話(通過擴展方法)
random.NextWeighted(MIN, MAX, WEIGHT);
重量是多少?多頻繁?你想要[正常分配](http://en.wikipedia.org/wiki/Normal_distribution)嗎? –
我們首先假設你想要數字從零到九,所以有十種可能性。如果您繪製了一百萬個常規RNG運行的直方圖,則預計在直方圖的每一列中會有十萬個點擊。你能描述一下你的*期望的*直方圖看起來像細節*嗎? –
您必須首先找出所需的[概率分佈](http://en.wikipedia.org/wiki/Probability_distribution)。 –