看的见的算法——三门问题

看的见的算法——三门问题

在美国的电视节目中有一个非常有意思的游戏:有三个门其中一个们后面有奖品,主持人会先让你选择一扇门,而后主持人打开一扇没有奖品的门,然后问你要不要换门,那么问题来了:换门中奖的概率高还是不换门高还是都一样首先我们先使用程序来看看这个问题:

package com.lipengge.threegatesproblem;

public class ThreeGatesExperiment {
	
    private int win;//中奖的次数
	public ThreeGatesExperiment(int gameNumber,boolean isChange) {
		if(gameNumber<0){
			System.out.println("输入不合法");
		}
		play(gameNumber,isChange);
	}
	//结果统计
	public void play(int gameNumber,boolean isChange){
		for(int i=0;i<gameNumber;i++){
			if(run(isChange)){
				win++;
			}
			}
			System.out.println((double)win/gameNumber);
			System.out.println(1-(double)win/gameNumber);
	}
	//每次运行的结果
  public boolean run(boolean isChange){
	  int choiceDoor=(int)(Math.random()*3);
	  int prizeDoor=(int)(Math.random()*3);
	  if(choiceDoor==prizeDoor){
		 return isChange?false:true;
	  }else{
		 return isChange?true:false;
	  }
  }
 public static void main(String[] args) {
   new ThreeGatesExperiment(10000,true);
   
}
}

我们通过实验10000次来计算换门中奖的概率isChange是让用户输入换门还是不换门我们来看看结果:

在这里插入图片描述

第一行为换门中奖的概率为0.66约2/3

第二行为换门不中奖概率约为0.338 约1/3

由此得出结论换门得奖的概率高一些那么是为什么呢?

我们来分析一下:

刚开始选一个门中奖的概率为:1/3,不中奖的的概率为两扇门概率值和2/3

那么主持人打开一扇门你选的那扇门的中奖概率仍为1/3,由于已经确认没奖的一扇门的概率为0那么剩余一扇门的概率为:刚才两扇门概率之和2/3是不是和结果一致

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值