Day 74:谷歌面试问题
18年11月5日 · 史二美—北京理工大学 2396 人阅读
谷歌面试问题
如果30分钟内在高速公路上看到汽车的概率是0.95,那么10分钟内在高速公路上看到汽车的概率是多少?(假设默认概率恒定)这是一个测试概率技能的问题——如果我利用编程来解决这个问题,会怎么样呢? 10分钟间隔的概率必须在0到1之间,我们至少知道这么多。所以我们可以使用均匀随机发生器模拟概率为p的伯努利事件: success = rand ( )。接下来,我们可以以给定概率p͠在三个独立的10分钟间隔内跟踪一条道路,检查我们是否看到了一辆汽车。如果我们同时跟踪多条道路,我们可以根据固定值为p͠的10分钟间隔来估计30分钟间隔的概率p͠。所以,对于给定的p͠值,我们可以找到p͠,但是对于p͠= 0.95的期望值,我们如何找到p͠呢?答案是平分法。这是一种对连续数据的二进制搜索。在间隔[ 0,1 ]开始搜索,并设置p = . 5如果p > 95,搜索[ 0.5 ]如果p͠< . 95,搜索[ . 5,1 ]仅仅一会儿,我们就能发现30分钟间隔的概率约为63 %。这样,这个复杂的问题就被我们解决了!实现代码
测试
Python3Turtle