2009-2010.2《算法》-随机算法技巧.ppt

随机算法 有趣的例子 1、彩票的作用: 财富的重新分配过程, 买的目的:不中奖99.9999%,中奖0.0001% 2、赌场必输的原因: 换筹码 有穷 VS 无穷 贪心 随机算法定义 它是在接受输入的同时,为了随机选择的目的,还接收一串随机比特流并且在运行过程中使用该比特流的算法。 一个随机算法在不同的运行中对于相同的输入可以有不同的结果。同时,二次相同的输入,运行时间可能不同。 优势:1、相对于解决同一问题的确定性算法,随机算法所用的时间和空间通常比较小。 2、已知的随机算法,都比较容易理解。 举例: 求证:f(x1,x2,…,xn) ? 0 如果f(r1,r2,…,rn)=0,能说明恒等于0。 随机算法分类 分成两大类: Las Vegas 算法,Monte Carlo算法 Las Vegas 算法:这些算法或者得出正确解,或者无解。 Monte Carlo算法:这些算法总是给出解,但是偶尔可能会产生非正确解。然而,可以通过多次运行原算法,并且满足每次运行时的随机选择相互独立,使产生非正确解的概率可以减到任意小。 拉斯维加斯( Las Vegas )算法 拉斯维加斯算法的一个显著特征是它所作的随机性决策有可能导致算法找不到所需的解。 void obstinate(Object x, Object y) {// 反复调用拉斯维加斯算法LV(x,y),直到找到问

文档评论(0)

1亿VIP精品文档

相关文档