按概率返回0-N之間的數字的解法思想

昨天筆試碰到一個題目:

給定一個N個數的數組,[0-N],寫一個函數,返回 i (0 =<i <= N),要求: 按給定概率p[i]返回 , 且保證 p[0]+p[1]+……+ p[N] = 1; 

今天想了一個解法,記錄下來。

1: 確定概率的精度,如果精度爲1 ,我們就以10爲單位,精度爲2 就以100爲單位。

2:以精度爲1 爲例,我們進行計算。隨機產生[0-9] 之間的數字的概率爲等概率,我們可以利用這點來得出結果。

3 : 把10畫成10等份,用判斷語句進行對應。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章