某阿里巴巴笔试题集第23题

废话少说了,原题集出处:http://blog.csdn.net/hackbuteer1/article/details/6902917

题目: 一个骰子,6面,1个面是 1, 2个面是2, 3个面是3, 问平均掷多少次能使1、2、3都至少出现一次。

方法: 面对面试概率题几乎屡试不爽的分叉树递归列方程法。

这是一个求数学期望的问题,最终是求1,2,3出现至少一次的最短长度的期望。

这样分叉树的每个节点是一个期望状态,而每个分叉是一次投掷结果。将后续期望出现1、2、3各至少一次的情形记作L123(即题目所求),将后续期望出现1、2各至少一次(3无关)情形记作L12,而1至少一次(2,3无关)情形L1,其余数值符号类推,则树结构如下(列出4级结构已经足够):

第一级(树根) 第二级 第三级 第四级别
L123 掷1->L23 掷1->L23 同状态
    掷2->L3 根据投掷结果,或继续期待L3,或已经达到目标
    掷3->L2 根据投掷结果,或继续期待L2,或已经达到目标
  掷2->L13 掷1->L3 根据投掷结果,或继续期待L3,或已经达到目标
    掷2->L13 同状态
    掷3->L1 根据投掷结果,或继续期待L1,或已经达到目标
  掷3->L12 掷1->L2 根据投掷结果,或继续期待L2,或已经达到目标
    掷2->L1 根据投掷结果,或继续期待L1,或已经达到目标
    掷3->L12 同状态

接下来,就是要排出方程,因为一共7个未知数,如果排出7个线性方程就能解决问题。

这方程组里的未知数对应上述的状态,而其数值则是一个对长度(投掷次数)的数学期望。

根据这个树状结构和其中的递归关系,这个方程组就是:

L123 = p1 (L23+ 1) + p2 (L13+

  • 31
    点赞
  • 48
    收藏
    觉得还不错? 一键收藏
  • 40
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值