C++生成随机数:possion(泊松)分布(possion distribution)


long cls_random::randomPossion(double lambda)
{
    double x = -1, u;  
    double log1, log2;
    log1 = 0;
    log2 = -lambda;
    do
    {
        u = cls_random::randomUniform();   
        log1 += log(u);
        x++;   
    }while(log1 >= log2);
    return x;   
}

期望:E=lambda

方差:V=lambda

wiki: http://zh.wikipedia.org/wiki/%E6%B3%8A%E6%9D%BE%E5%88%86%E4%BD%88


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM