关于生日悖论问题的验证
昨天在网上看到一个非常有意思的问题:
数学老师和体育老师打赌,数据老师认为在他们有50个人的班级里有两个生日是同一天的同学的概率远超没有的概率,反之是体育老师的观点。
第一次看到的时候我觉得这特数学老师才是教体育的吧,
我万万没想到在这个po主 经过一番奇奇怪怪 我没有看懂的数学操作之后
他告诉我 50个人的班级里 有两个生日相同的同学的概率是97%以上
而且 他还告诉我 他是科学的 严谨的 正确的 我特么.......
这里就引出了生日悖论
百度百科解释如下
生日悖论,指如果一个房间里有23个或23个以上的人,那么至少有两个人的生日相同的概率要大于50%。这就意味着在一个典型的标准小学班级(30人)中,存在两人生日相同的可能性更高。对于60或者更多的人,这种概率要大于99%。从引起逻辑矛盾的角度来说生日悖论并不是一种悖论,从这个数学事实与一般直觉相抵触的意义上,它才称得上是一个悖论。大多数人会认为,23人中有2人生日相同的概率应该远远小于50%。计算与此相关的概率被称为生日问题,在这个问题之后的数学理论已被用于设计著名的密码攻击方法:生日攻击。
可我还是不信 怎么办? 写段代码跑
第一次 测试100次一年内20个随机日期 出现相同的概率
妈呀 第一次 概率居然达到了90%
检查代码后发现没问题 再来一遍 这次 还是20个人 测试10000次
这次没有那么夸张 可也有41.8%
于是我测试了一下50个人的概率 还是一万次
97.7%!!!!!!!!!!!
随后又进行了几次测试 发现概率均在90%以上
而且测试次数越多结果越是趋近于97% - 98%
相信你和我一样 很震惊 不过我眉头一皱 就找到了问题的答案 嘿嘿嘿 下面是科普时间
嗯~ ~ 如果你还是不是明白 那我换种说法
作者: Felix-Zhang
出处:https://www.cnblogs.com/zhangxiaoxia/p/10783980.html
版权:本站使用「CC BY 4.0」创作共享协议,转载请在文章明显位置注明作者及出处。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探