压力表哪个品牌好:生日悖论

来源:百度文库 编辑:高考问答 时间:2024/04/29 09:40:24
请问大家,什么是生日悖论?谢谢了!

Birthday Paradox - 生日悖论

初级或然率(机率)与统计学课程里,最为人津津乐道的就是生日问题 (Birthday Problem):探讨 N 个人里,随便选两个人,生日是同一天的机率问题 (同月同日,但不见得要同年)。

第二个课题就是:N 个人里的 N 要有多大,才能让机率高於 50% 呢? 答案是 23,这样的数字,小到让人觉得不可思议。基於此,我们常称此为生日悖论 (Birthday Paradox;也有人称「生日矛盾」)。

这个理论假定有两个前提:
1. 没有人的生日是二月二十九。
2. 每个人的生日乃平均分散於一年的 365 天内。

此问题首先要提到的就是先解决互补问题 (complementary problem),这也是比较简单的一部份:随便选,要选几个人是生日完全不同的? 我们可以把它写成一个递回函数 (recursive function):

double different_birthdays(int n)
{
return n == 1 ? 1.0 : different_birthdays(n-1) * (365.0-(n-1))/365.0;
}

显然,N = 1 的机率为 1,N>1 的机率则有两种结果:
1. 前 N-1 个人拥有完全不同的生日。
2. 第 N-th 个人的生日与前 N-1 个人不同。

展现此机率的程式可能长得像这样:

void main(void)
{
int n;
for (n = 1; n <= 365; n++)
printf("%3d: %e\n", n, 1.0-different_birthdays(n));
}

产生结果如下:

1: 0.000000e+00
2: 2.739726e-03
3: 8.204166e-03
4: 1.635591e-02
5: 2.713557e-02
***
20: 4.114384e-01
21: 4.436883e-01
22: 4.756953e-01
23: 5.072972e-01
24: 5.383443e-01
25: 5.686997e-01
***

结论则为,在 N 个人里,至少有两个人拥有相同生日,其机率大於 0.5 者,N 为 23。

原文出处:http://efgh.com/math/birthday.htm

看的晕头转向的。算你强。。。完全看不懂。。。。