- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构章内部排序
由于含有n个结点的二叉树的深度为[log2n]+1则在树型选择排序中,除了最小关键字外,没选择一个次小关键字仅需要进行[log2n]次比较,因此,它的时间复杂度为O(nlogn),但是这种排序方法所需辅助空间较多,和最大值进行多余的比较等缺点。 威洛姆斯(J.willioms)在1964年提出了另一种形式的选择排序——堆排序。 10.4.2 堆排序 何谓“堆”? 堆是满足下列性质的n个元素的序列 {k1,k2,…,kn?} 满足下列关系则称作小顶堆 或大顶堆 “堆顶” 元素为序列中的“最小值”或“最大值“ 小顶堆 大顶堆 利用堆的特性进行的排序方法即为“堆排序” 其排序过程如下: 假设待排关键字序列为: { 34, 39, 20, 65, 47, 12, 98, 73, 81, 56 } 1)先将它调整为大顶堆:{ 98, 81, 34, 73, 56, 12, 20, 39, 65, 47 } 2)互换“堆顶”和待排序列中 的最后的关键字: { 47, 81, 34, 73, 56, 12, 20, 39, 65, 98 } 3)在待排序列中舍去最大关键字,将其余部 分重新调整为堆 { 81, 73, 34, 65, 56, 12, 20, 39, 47 } 98 4)重复2)和3)直至待排序列中只剩一个关键字为止。 可见,堆排序的两个关键问题是: 1) 如何将一个无序序列调整为堆?2)如何在互换堆顶之后重新调整为堆? 先讨论第二个问题:只要 “从上到下” 进行 “筛选” 可将该序列重新调整为大顶堆。如动画flash10-4-2 如何建堆? 建堆的过程是一个从下到上调整堆的过程。 例如动画 flash10-4-4所示对无序序列进行建堆的过程。 教材p282 算法10.10 调整堆的过程 教材p282 算法10.11 堆排序过程 * * 10.1 排序的定义和方法 什么是“排序”? 简单说,排序是将无序的记录序列调整为有序记录序列的一种操作。 例如,将下列记录序列 { 52, 49, 80, 36, 14, 58, 61, 23, 97, 75 } 调整为序列 { 14, 23, 36, 49, 52, 58, 61, 75, 80, 97 } 第十章 内部排序 一般情况下,对排序的定义为: 假设含有n个记录的序列为: { r1,r2,…,rn} (10-1) 它们的关键字相应为 {k1, k2,…,kn} 对式(10-1)的记录序列进行排序就是要确定序号1,2,…,n的一种排列 P1,P2,…,Pn 使其相应的关键字满足如下的非递减(或非递增)的关系: (10-2) ?????????????????????? 就是使式(10-1)的记录序列重新排列成一个按关键字有序的序列 { rp1,rp2,…,rpn } (10-3) 当待排序记录中的关键字 ?(i=1,2,…,n)都不相同时,则任何一个记录的无序序列经排序后得到的结果是唯一; 若待排序的序列中存在两个或两个以上关键字相等的记录,则排序所得到的结果不唯一。 假设ki=kj (1≤i≤n,1≤j≤n,i≠j), 且在排序前的序列中,ri 领先于 rj(即ij)。 若在排序后的序列中 ri 仍领先于 rj, 则称所用的排序方法是稳定的; 反之,若可能使排序后的序列中 rj领先于 ri?, 则称所用的排序方法是不稳定的 根据涉及的存储器不同,将排序方法分为两大类: 1)内部排序:在排序进行的过程中不使用计算机外部 存储器的排序过程。 2)外部排序:在排序进行的过程中需要对外存进行访 问的排序过程。 内部排序的方法
您可能关注的文档
最近下载
- SUZUKI铃木UU125T摩托车维修手册.pdf VIP
- 公路及市政道路用高强透水水泥混凝土路面技术规程 条文说明.pdf VIP
- mike 2016 feflow指南中fepestuser manualfepest用户手册.pdf VIP
- 网格员防诈骗宣传知识讲座.pptx VIP
- 勘测定界 标书 设计书 测绘方案.docx VIP
- 《JTGD20-2006-公路路线设计》.pdf VIP
- 公路及市政道路用高强透水水泥混凝土路面技术规程.pdf VIP
- 2017年考研英语一真题及答案.pdf VIP
- FX-501-C2简易操作说明.doc VIP
- 北师大版小学数学二年级上册第二单元 测量(一)综合素养测评卷(含答案).pdf VIP
文档评论(0)