反直觉的「生日悖论」问题

点击蓝色“五分钟学算法”关注我哟

加个“星标”,一起学算法

640

作者 | labuladong

来源 | labuladong


生日悖论是由这样一个问题引出的:一个屋子里需要有多少人,才能使得存在至少两个人生日是同一天的概率达到 50%


给你 5 秒钟随便猜一个数字,再点击下方空白处查看答案!


点击下方空白区域查看答案

答案是 23 个人,也就是说房子里如果有 23 个人,那么就有 50% 的概率会存在两个人生日相同。

640?wx_fmt=gif


这个结论看起来不可思议,所以被称为悖论。按照直觉,要得到 50% 的概率,起码得有 183 个人吧,因为一年有 365 天呀?其实不是的,觉得这个结论不可思议主要有两个思维误区:


第一个误区是误解「存在」这个词的含义。


读者可能认为,如果 23 个人中出现相同生日的概率就能达到 50%,是不是意味着:


假设现在屋子里坐着 22 个人,然后我走进去,那么有 50% 的概率我可以找到一个人和我生日相同?


并不是的,你这种想法是以自我为中心,而题目的概率是在描述整体。也就是说「存在」的含义是指 23 人中的任意两个人,涉及排列组合,大概率和你这个个体没啥关系。


如果你非要计算存在和自己生日相同的人的概率是多少,可以这样计算:


1 - P(22 个人都和我的生日不同) = 1 -(364/365)^22 = 0.06


这样计算得到的结果是不是看起来合理多了?生日悖论计算的对象不是某一个人,而是一个整体,其中包含了所有人的排列组合,它们的概率之和当然会大得多。


第二个误区是认为概率是线性变化的。


读者可能认为,如果 23 个人中出现相同生日的概率就能达到 50%,是不是意味着 46 个人的概率就能达到 100%?


不是的,就像中奖率 50% 的游戏,你玩两次的中奖率就是 100% 吗?显然不是,你玩两次的中奖率是 75%:


P()=P()+P()=1/2+1/21/2=75%


那么换到生日悖论也是一个道理,概率不是简单叠加,而要考虑一个连续的过程。所以 23 个人能达到 50% 的概率并没有什么不合常理之处。


那为什么只要 23 个人出现相同生日的概率就能大于 50% 了呢?我们先计算 23 个人生日都唯一(不重复)的概率。只有 1 个人的时候,生日唯一的概率是 365/365,2 个人时,生日唯一的概率是 365/365×364/365,以此类推,可知 23 人的生日都唯一的概率:


640?wx_fmt=png


算出来大约是 0.493,所以存在相同生日的概率就是 0.507,差不多就是 50% 了。


实际上,按照这个算法,当人数达到 70 时,存在两个人生日相同的概率就上升到了 99.9%,基本可以认为是 100% 了。



所以从概率上说,一个几十人的小团体中存在生日相同的人真没啥稀奇的。


如你对这种反直觉的问题还感兴趣的话,可以看看小吴之前的那篇文章:神奇的三门问题

END

640?wx_fmt=png

 原 创 热 文 推 荐 


毕业十年后,我忍不住出了一份程序员的高考试卷

一道腾讯面试题:厉害了我的杯

十大经典排序算法动画与解析,看我就够了

这或许是东半球分析十大排序算法最好的一篇文章

面试官,我会写二分查找法!对,没有 bug 的那种!


640?wx_fmt=png 你点的每个“在看”,我都认真当成了喜欢
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值