随机算法主要有:1、数值概率算法;2、拉斯维加斯算法(LasVegas);3、蒙特卡罗算法(MonteCarlo);4、舍伍德算法(Sherwood)。随机算法是一个概念图灵机,也就是在算法中引入随机因素,即通过随机数选择算法的下一步操作。

随机算法有哪些-编程知识网

随机算法有哪些

1、数值概率算法:用于数值问题的求解。所得到的解几乎都是近似解,近似解的精度
随着计算时间的增加而不断地提高。

2、拉斯维加斯算法(LasVegas):要么给出问题的正确答案,要么得不到答案。反复求解多次,可
使失效的概率任意小。

3、蒙特卡罗算法(MonteCarlo):总能得到问题的答案,偶然产生不正确的答案。重复运行,每一次
都进行随机选择,可使不正确答案的概率变得任意小。

4、舍伍德算法(Sherwood):很多具有很好的平均运行时间的确定性算法,在最坏的情况下性能很坏。引入随机性加以改造,可以消除或减少一般情况和最坏情况的差别。

延伸阅读:

随机算法是一个概念图灵机,也就是在算法中引入随机因素,即通过随机数选择算法的下一步操作。

一个随机算法是一种算法,它采用了一定程度的随机性作为其逻辑的一部分。该算法通常使用均匀随机位作为辅助输入来指导自己的行为,超过随机位的所有可能的选择实现了“平均情况下的”良好业绩的希望。从形式上看,该算法的性能将会是一个随机变量,由随机位决定;因此无论是运行时间,或输出(或两者)是随机变量。

在常见的实践中,随机化算法是使用近似的伪随机数发生器代替随机比特的真实来源的;这样的实施可以从预期的理论行为偏离。

解问题P的随机算法定义为:设I是问题P的一个实例,用算法解I的某些时刻,随机选取 ,由

b来决定算法的下一步动作。

优点:1、执行时间和空间,小于同一问题的已知最好的确定性算法;2、实现比较简单,容易理解;

三要素:输入实例、随机源和停止准则。

一种平衡:随机算法可以理解为在时间、空间和随机三大计算资源中的平衡。


最后,推荐我们的管理工具给大家

随机算法有哪些-编程知识网
随机算法有哪些-编程知识网