我正在尝试实施加权随机数.我现在只是把头靠在墙上,无法解决这个问题.
在我的项目(德州扑克手牌范围,主观全权证券分析)中,我正在使用Boost的随机函数.所以,假设我想选择1到3之间的随机数(所以要么是1,2或3).Boost的mersenne twister发电机就像这样的魅力.但是,我希望选择加权,例如:
1 (weight: 90)
2 (weight: 56)
3 (weight: 4)Run Code Online (Sandbox Code Playgroud)
Boost是否具有某种功能?
如何根据普通语音中的使用频率随机生成字母?
任何伪代码都很受欢迎,但Java中的实现会非常棒.否则只是朝正确的方向戳一下会很有帮助.
注意:我不需要生成使用频率 - 我确信我可以很容易地查看它.
我知道,有一个类似的问题,但它使我感到困惑,所以我认为以我的方式提问更容易.
所以我有一系列价值观,正面和负面.它们越高,被选中的概率就越大.
我实际上无法确定如何分配概率,然后随机选择一个概率.我猜这个数组需要先排序,但之后我就有点迷失了.
random ×4
c++ ×2
algorithm ×1
boost ×1
c ×1
gsl ×1
java ×1
probability ×1
pseudocode ×1
tr1 ×1