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

posted on 2012-07-15 21:12  yeahgis  阅读(7553)  评论(0编辑  收藏  举报