线性时间排序精要.pptVIP

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
线性时间排序精要.ppt

? ? ?(n) ? ? E O(ni2 ) ? ? ?(n) ? ? O E (ni2 ) 25 ? ? n ?1 i ?0 n ?1 i ?0 桶排序算法的运行时间 除第5行外,所有各行在最坏情况的时间都是O(n)。唯 一需要分析的部分就在于第5行中插入排序所花的时 间。 为分析调用插入排序的时间代价,设n_i为表示桶B[i]中 元素个数的随机变量。因为插入排序以二次时间运行, 因而桶排序的运行时间: n ?1 T (n) ? ?(n) ? ? O(ni2 ) i ?0 对上式两边取期望,并利用期望的线性性质, n ?1 ? i ?0 ? 桶排序算法的运行时间 下式 i E?n 2 ? ? 2 ? 1 / n 对i=0,1,…,n-1是成立的。每一个桶i有相同 的值 E?ni2 ? 是不足为奇的,因为输入数组A中的每 一个值都是等可能地落在任何桶内的。为了证 明上式,我们定义指示器随机变量 X ij ? I{ A[ j]落在桶i中} 其中,i=0,1,…,n-1, j=1,2,…,n。于是, n j ?1 项进行重新组合: 26 ? ? ? ? E?X ? ? E X ij2 ? E ?? X ij2 ?? ? 1* ? 0* ? ? ? 1 ? ? ? 1 1 E n ? ? ? ? ? j ?1 1? j ? n 1? k ? n n n ? n(n ? 1) * 2 ? 1 ? ? 2 ? 27 ? ? ? ? ? k ? j ij X ik n j ?1 1? j ? n 1? k ? n 桶排序算法的运行时间 2 X X ?? j ?1 ? ? ? j ?1 k ?1 ? ? k ? j ? (8.3) X ij 为 我们分别计算两个和式。指示器随机变量 1的概率为1/n,其他情况下为0.于是有 1 ? 1 ? 1 n ? n ? n 将这两个期望值替换进式8.3,有 n k ? j i 2 2 n ? 1 1 n n 1 n 1 n ? n * 28 桶排序算法的运行时间 因此,桶排序的期望运行时间为Θ(n) + n*O(2- 1/n)= Θ(n) * * 第8章:线性时间排序 2 本章内容 介绍了几种O(nlgn)的排序算法: 合并排序和堆排序达到此上界; 快速排序平均情况下达到此上界; 比较排序算法的下界 线性时间排序: 计数排序(Counting Sort) 基数排序(Radix Sort) 桶排序(Bucket Sort) 3 8.1 排序算法的下界 比较排序算法的作用 比较排序算法仅用来确定输入序列a1, a2, . . ., an的元素间次序,即给定两个元素ai 和aj, 测试ai aj, ai ≤ aj, ai = aj, ai ≥ aj, 或ai aj 中哪一个成立。 4 8.1 排序算法的下界 决策树模型 比较排序可以被抽象的视为决策树。一棵 决策树是一棵满二叉树,表示某排序算法 作用于给定输入所做的所有比较。(6,8,5) 5 决策树 在决策树中,对每个内结点都注明i:j,其中 1≤i,j≤n,n是输入序列中的元素个数。 对每个叶结点都注明排列 (π(1),π(2),…,π(n))。 排序算法的执行对应于遍历一条从树的根到叶 结点的路径。在每个内节结点处要做比较 要使排序算法能正确的工作,其必要条件是,n 个元素的n!种排列中的每一种都要作为决策树 的一个叶子而出现。 ai ? a j 6 最坏情况下界 在决策树中,从根到任意一个可达叶节点之间 最长路径的长度,表示对应的排序算法中最坏 情况下的比较次数。这样,

您可能关注的文档

文档评论(0)

love + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档