问题来源:
《数据结构与算法分析——Java语言描述》(美)Mark Allen Weiss
第四章的习题 4.14
理论证明:
已知事件A发生的概率为p,
试验1次,事件A就发生的概率为p,
试验2次,事件A才发生的概率为p·(1-p),
试验3次,事件A才发生的概率为p·(1-p)^2,
...
试验k次,事件A才发生的概率为p·(1-p)^(k-1)。
试验次数的期望
E = sigma(k = 1~无穷大) k·p·(1-p)^(k-1)
记 S = 1 + 2(1-p) + 3(1-p)^2 + ... + k(1-p)^(k-1),
(1-p)S = (1-p) + 2(1-p)^2 + 3(1-p)3 + ... + (k-1)(1-p)^(k-1) + k(1-p)^k,
所以,
pS = 1 + (1-p) + (1-p)^2 + (1-p)^3 + ... + (1-p)^(k-1) - k(1-p)^k,
S = (1-(1-p)^k)/p - k(1-p)^k
当k趋向于无穷大时,S = 1/(p^2),
所以,E = 1/p。
编写程序验证: