等概率产生随机数

1.r()函数等概率随机产生1到5,如何等概率随机产生1-7?

  • r()-1产生0-4
  • (r()-1)*5产生0,5,10,15,20
  • f() = (r()-1)*5 + r()-1产生0-24
  • f()%7且f()产生21-24重做,则f()%等概率产生0-6,加1等概率产生1-7;
  • 方法为插孔加筛选

2.概率p产生0,1-p产生1,怎么等概率产生0,1?

产生01和10的概率相等

3.r()产生1-M,怎么等概率产生1-N

  • 把r()当做M进制,看看产生1-n最少要多个位m进制

results matching ""

    No results matching ""