算法导论第5.3章 - 随机算法

随机算法

简而言之,随机算法就是随机设定输入的排列组合。
与概率分析类似,这种方法可以用这种方法来估算算法的平均情况。
主要适用于那些对分布不了解,或者概率分析起来很复杂的算法

两种生成均匀随机排列的随机化方法

  • PERMUTE-BY-SORTING
    随机生成一个排序,然后重新排列,以此生成随机序列
PERMUTE-BY-SORTING(A)
  n = A.length
  let P[1. .n] be a new array
  for i = 1 to n
    P[i] = RANDOM(1, n^^3)
  sort A, using P as sort key
  • RANDOMIZE-IN-PLACE
    随机的置换所有的元素,从而得到一个新的随机排列
RANDOM-IN-PLACE(A)
  n = A.length
  for i = 1 to n
    swap A[i] with A[RANDOM(i, n)]

具体证明的步骤参考P70-72

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1. 算法 2. 可以解决哪些类型的问题 3. 算法分析 4. 算法设计4.1. 分治(divide and co...
    mbinary阅读 1,348评论 0 0
  • 目录 0.雇佣问题 1.概率分析的含义 2.随机算法 3.随机算法与概率分析的区别 4.雇佣问题的随机算法4.1 ...
    王侦阅读 3,000评论 0 1
  • 参考资料:概率分析和随机算法雇佣问题在讲述概率分析和随机算法之前,需要先简单介绍一下,概率论的基础知识 基础知识 ...
    Bowiee阅读 2,023评论 1 3
  • 要点: 指示器随机变量 随机算法 2个 雇佣问题与在线雇佣问题(待完善) 指示器随机变量 基本定义 给定一个样本空...
    陈码工阅读 698评论 0 0
  • 16宿命:用概率思维提高你的胜算 以前的我是风险厌恶者,不喜欢去冒险,但是人生放弃了冒险,也就放弃了无数的可能。 ...
    yichen大刀阅读 8,164评论 0 4

友情链接更多精彩内容