C++ piecewise_constant_distribution分段常數分佈亂數用法詳解

2020-07-16 10:04:28
piecewise_constant_distribution 模板定義了一個在一組分段子區間生成浮點值的分布。給定子區間內的值是均勻分布的,每個子區間都有自己的權重。n 個區間邊界可以定義 n-1 個子區間和 n-1 個可以運用到子區間的權重,由這 n 個區間邊界定義一個物件,圖 1 說明了這一點。

圖 1 中的分布定義了 3 個區間,每個都有自己的權重。這 3 個區間是由定義在容器 b 中的 4 個邊界值定義的。每個區間都有一個由容器 w 中的元素定義的權重。它的前兩個引數是指定邊界序列的疊代器,第三個引數是指向權重序列的第一個元素的疊代器。每個區間內的值都是均勻分布的,特定區間內的隨機值的概率是由這個區間的權重決定的。


圖 1 分段常數分布