哪一種方法最適合用來產生加權隨機數:找出表格還是迭代求和?
Nov 11, 2024 am 12:27 AM產生加權隨機數:拒絕取樣的有效替代方案
雖然拒絕取樣是選擇具有加權機率的隨機數的簡單方法,它可能不是所有場景下最有效的解決方案。以下是兩種具有不同性能特徵的替代策略:
恆定時間查找表(透過高階函數)
這種方法涉及根據權重建立一個查找表規範並傳回一個從表中檢索值的函數。好處包括:
- 恆定時間值選擇
- 使用高階函數的簡單實現
但是,此策略需要線性時間來建立對於大規格或小重量或精確重量的表,可能會消耗大量記憶體
迭代求和
在此策略中,會產生[0,1) 範圍內的隨機數,並與權重的累積和進行迭代比較。如果隨機數位於特定值的累積和之內,則傳回該值。這種方法的優點包括:
- 無需前期表構建成本
- 平均性能與條目數量成線性關係
但是,這種方法可能比常數時間計算更密集
結論
方法的選擇取決於應用程式的特定要求。常數時間尋找適合對效能要求較高的場景,而迭代求和更適合規格較大或權值較小或精確的場景。
以上是哪一種方法最適合用來產生加權隨機數:找出表格還是迭代求和?的詳細內容。更多資訊請關注PHP中文網其他相關文章!
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章
倉庫:如何復興隊友
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
擊敗分裂小說需要多長時間?
3 週前
By DDD
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前
By 尊渡假赌尊渡假赌尊渡假赌
公眾號網頁更新緩存難題:如何避免版本更新後舊緩存影響用戶體驗?
3 週前
By 王林

熱門文章
倉庫:如何復興隊友
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
擊敗分裂小說需要多長時間?
3 週前
By DDD
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前
By 尊渡假赌尊渡假赌尊渡假赌
公眾號網頁更新緩存難題:如何避免版本更新後舊緩存影響用戶體驗?
3 週前
By 王林

熱門文章標籤

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)