排序的概念和类型.ppt

  1. 1、本文档共107页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
排序的概念和类型

第8章 排序 排序的概念;本章导读 排序是;8.1 排序的基本概念8.1;假设含有n个记录的序列为:{R;2.排序分类 增排序和减排序;(3) 内部排序与外部排序:在;8.1.2 排序算法的效率分;2.空间复杂度分析 ;8.2 插入排序 插入;8.2.1 直接插入排序 ;向有序表中插入记录,主要完成如;void Insert_Sor;显然,开始时有序表中只有1个记;【例8-1】假设有7个待排序的;空间性能:该算法仅需要一个记录;(2)当初始数据序列的关键字序;8.2.2 折半插入排序 ;设置始指针low,指向有序表的;while(low=high;【例8-2】待排序记录的关键字;折半插入排序的比较次数与待排序;折半插入排序仅减少了关键字间的;8.2.3 希尔排序 ;(1)首先取一个整数d1n,;图8-3 希尔排序过程 鞍勉;第一趟排序时,取d1=5,整个;希尔排序的算法如下:void ;从希尔排序过程可以看到: (1;8.3交换排序 利用交;冒泡排序(Bubble sor;键字最大的记录被交换到n-i+;算法描述如下:#define ;在该算法中,外层循环控制排序的;图8-4 冒泡排序过程 学待;执行了5趟冒泡排序后,完成了整;(2)如果初始记录序列为“逆序;8.3.3 快速排序 ;2.选取基准在快速排序中,选取;3.快速排序的实现 算法;(2)从序列最前位置的记录Ri;算法描述如下:void Qui;【例8-5】假设有8个记录,关;选取第一个记录作为基准记录,存;(2)各趟排序之后的结果 图8;快速排序算法的执行时间取决于基;(2)在极端情况下,即每次选取;(3)一般情况下,序列中各记录;8.4选择排序 选择排;(3)不断重复过程(1)和(2;void Select_Sor;【例8-6】采用简单选择排序对;简单选择排序算法的关键字比较次;8.4.2 堆排序 堆排序;n个元素序列{k1,k2,…,;根据堆的定义,可以推出堆的两个;2. 堆的构建 堆排序的基;没有孩子结点,因此以R[i]为;(a)24<37 不调整 (b;(对i=4的结点筛选) (对i;筛选算法描述如下:void S;建初始堆的过程描述为:for(;3.堆排序 对于已建好的堆,可;【例8-7】用“筛选法”在如图;(e) 重建堆,筛选56下移两;(i) 重建堆,筛选61下移一;(m) 重建堆,筛选61下移一;对堆排序算法主要由建立初始堆和;类似地,可求出堆排序所需的记录;8.5归并排序 归并排;二路归并排序的基本思想是:将有;1.两个有序表的合并算法Mer;void Merge(RecT;while(i=m){ ;2.一趟归并排序的算法Merg;void MergePass(;3.归并排序算法Merge--;【例8-8】初始序列为{23,;显然,n个记录进行二路归并排序;8.6基数排序 基数排;其中,C0≤Ki j≤Cr-1;typedef struct ;p=head; ;【例8-9】设待排序序列中有1;斑恶踪癸呜莽骸曼限汕言捌灶围温;基数排序的执行时间取决于记录关;8.7外部排序 外部排;8.7.1外部排序过程 ;图8-14 2-路平衡归并;8.7.2多路平衡归并 ;利用败者树在k个记录中选择最小;【例8-10】设有5个初始归并;将ls0中的最小关键字记录送入;图 8-15 实现5-路归;8.7.3置换一选择排序 ;(1) 在输出文件FO中标记第;【例8-11】设文件中共有18;讳厂勤暗纶梗暴新泰女呆紧次姻腾;共产生两个初始归并段,即归并段;8.8各种排序方法的比较 ;下面具体比较一下各种排序方法,;表8-2 内部排序方法的时;依据这些因素,可得出如下几点结;前面讨论的排序算法,除基数排序;本章小结 排序是软件设计中;交换排序的基本思想是:两两比较;选择排序的基本思想是:在每一趟;基数排序是利用多次的分配和收集

文档评论(0)

jgx3536 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档