- 1、本文档共25页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第九章 排序3课件
排序上机习题
1.? 奇偶交换排序是另一种交换排序。算法的基本思想如下:排序过程通过对文件x[i](l≤i≤n)的若干次扫描来完成,第奇数次扫描,对所有下标为奇数的记录x[i]与其后面的记录x[i+1](l≤i≤n–1)相比较,若x[i].KEY(记录x[i]的关键饲)>x[i+1].KEY,则交换x[i]和x[i+1]的内容;第偶数次扫描,对所有下标为偶数的记录x[i]与其后面的记录x[i+1](2≤i≤n–1)相比较,若x[i].KEY>x[i+1].KEY,则交换x[i]和x[i+1]之内容。一趟奇数次扫描和一趟偶数次扫描被称为一趟奇偶扫描。重复上述过程直到排序完成为止。
(l)排序的终止条件是什么?
(2)完成该算法的具体设计。
(3)当待排序关键字序列的初始排列是从小到大有序,或从大到小有序时,在奇偶交换排序过程中的关键字比较次数是多少? ; 2、? 有n个记录存储在带头结点的双向链表中,结点结构如图所示。现用双向起泡排序法对其按上升进行排序,请写出这种排序算法。(注:双向起泡排序即相邻两趟排序向相反方向起泡。)
;9.4 合并排序
9.4.1 二路合并排序
1 合并:把两个或多个有序文件组成一个单一的 有序文件。
2 两个文件的合并。
;
两个有序表R[l] …R[m]和R[m+1] …R[n]。它们可合并成一个有序表,存于另一有序表X[l] …X[n]中。
这种合并方法称为两路合并 (2-way merging)。
其基本思想是:设两个有序表A和B,变量 i 和 j 分别是表A和表B的当前检测指针。设表C是合并后的新有序表,变量 k 是它的当前存放指针。;08 21 25 25* 49 62 72 93 ;此算法的关键码比较次数和对象移动次数均为 (m - t + 1) + (n - m) = n - t + 1。
算法Merge (R,t,m,n. X) : 假定文件(Rt,Rt+1,…,Rm)和文件(Rm+1,…,Rn)都已经排序,该算法合并这两个文件后得到排序好的大文件(Xt,Xt+1,…,Xn);
算法Merge()演示;两个有序文件合并成一个大的有序文件
算法Merge (R,t,m,n . X)算法Merge()演示
M1 [初始化给每个文件一个头指针]
i←t .j←m+l .k←1 .
M2 [比较 i和 j所指记录]
WHILE(i≤m) AND(j≤n) DO
(IF Ki≤Kj THEN(Xk←Ri .i←i+1)
ELSE(Xk←Rj .j←j+l).
k←k+1).
M3 [复制余留记录项]
WHILE (i≤m)
{Xk =Ri ?. i←i+1. k←k+1.}
WHILE (j≤n)
{Xk =Rj ?. j←j+1. k←k+1.} ▌; 3 合并排序。
;迭代的合并排序算法就是利用两路合并过程进行排序的。其基本思想是:
假设初始对象序列有 n 个对象,第1趟把它看成是 n 个长度为 1 的有序子序列 (归并项),先做两两合并,得到 ?n / 2? 个长度小于等于 2 的文件 (如果 n 为奇数,则最后一个有序子序列的长度为1);第2趟长度小于等于 2 的文件,…,如此重复,最后得到一个长度为 n 的有序序列。
第i趟,合并长度小于等于 2i -1的文件 。
若存在2k n = 2k+1, 则需k+1趟合并。
;算法MPass()调用Merge()函数.;合并排序MSort(R,n) 调用函数Mpass(), ; 算法Merge (R,t,m,n. X) : 假定文件(Rt,Rt+1,…,Rm)和文件(Rm+1,…,Rn)都已经排序,该算法合并这两个文件后得到排序好的大文件(Xt,Xt+1,…,Xn);
算法Merge()演示
算法MPass(R,n,1ength.X):一趟合并算法,该算法执行一趟合并过程,将文件R中长度为length的所有子文件合并到文件X中,n是R的记录个数,该函数调用Merge()函数;
算法MPass()演示
算法MSort(R,n) :该函数调用函数Mpass(),直接两路合并排序,X是辅助文件;
合并排序MSort(R,n) 演示;不论对于怎样的输入,算法MSort(R,n)的合并趟数是一样的. 对于基本排序的文件,可以修改算法MSort,使得合并的趟数达到最少,具体做法是,对输入记录表进行扫描,导出其中由有序记录组成的若干个子表. 然后基
您可能关注的文档
- [人力资源管理].Human.Resource.Management_Chapter7课件.ppt
- [修改] 第二章计算机中数据信息的表示课件.ppt
- [名校联盟]重庆市北大附中重庆实验学校高考英语第一轮复习《高二:Unit 13-14》课件课件.ppt
- [外研版]2013届高考英语一轮复习语法专题10 正反解读定语从句课件.ppt
- [辽大] 07几何造型课件.ppt
- _进口合同的履行课件.ppt
- 第八章 幼儿语言学习与教学.ppt
- 第二章 MATLAB基础课件.ppt
- 第二章 传统贸易理论(下)课件.ppt
- {6F75DF2F-CB6A-444C-AE79-A86E295575C1}.概论课件.ppt
- 2025中国冶金地质总局所属在京单位高校毕业生招聘23人笔试参考题库附带答案详解.doc
- 2025年01月中国人民大学文学院公开招聘1人笔试历年典型考题(历年真题考点)解题思路附带答案详解.doc
- 2024黑龙江省农业投资集团有限公司权属企业市场化选聘10人笔试参考题库附带答案详解.pdf
- 2025汇明光电秋招提前批开启笔试参考题库附带答案详解.pdf
- 2024中国能建葛洲坝集团审计部公开招聘1人笔试参考题库附带答案详解.pdf
- 2024吉林省水工局集团竞聘上岗7人笔试参考题库附带答案详解.pdf
- 2024首发(河北)物流有限公司公开招聘工作人员笔试参考题库附带答案详解.pdf
- 2023国家电投海南公司所属单位社会招聘笔试参考题库附带答案详解.pdf
- 2024湖南怀化会同县供水有限责任公司招聘9人笔试参考题库附带答案详解.pdf
- 2025上海烟草机械有限责任公司招聘22人笔试参考题库附带答案详解.pdf
最近下载
- [紧固件标准]JBZQ 4331-2006 六角开槽螺母.pdf VIP
- DMP3200系列保护测控装置使用说明书.pptx VIP
- 学会宽容-主题班会.ppt VIP
- SPC培训教材---完整版-PPT.ppt VIP
- 生物医药生物医药临床监查员岗面试真题题库参考答案和答题要点.docx VIP
- 群塔交叉作业防碰撞应急预案.pdf VIP
- 【地理】2021年高考真题——福建卷(含答案) .pdf VIP
- 化工过程安全管理五要点-陈毅峰-双语版.pdf VIP
- 【《白酒企业员工培训外包管理的案例分析—以迎驾贡酒为例》10000字】 .docx VIP
- YM-WI-SMT-065 A0 松下 NPM-D3 贴片机保养指导书.pdf VIP
文档评论(0)