- 1、本文档共56页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构课程的内容;排序:将一个数据元素(或记录)的任意序列,重新
排列成一个按关键字有序的序列
内部排序:将待排记录存放在计算机随机存储器重进
行的排序过程。
外部排序:由于待排记录的数量很大,以至内存一次
不能容纳全部记录,在排序过程中尚需要
对外存进行访问的排序过程。
;第10章 内部排序;10.1 概述;2、关键字;3、排序的目的是什么?;5、什么叫内部排序?什么叫外部排序;6、待排序记录在内存中怎样存储和处理;6. 顺序存储(顺序表)的抽象数据类型如何表示?;7. 内部排序的算法有哪些?;10.2 插入排序;(1)直接插入排序;例1:关键字序列T=(13,6,3,31,9,27,5,11),
请写出直接插入排序的中间过程序列。;void InsertSort(SqList L)
{
// 对顺序表L作直接插入排序。
int i, j;
for (i=2; i=L.length; ++i)
if (LT(L.r[i].key, L.r[i-1].key)) {
// 时,需将L.r[i]插入有序子表
L.r[0] = L.r[i]; // 复制为哨兵
for (j=i-2; LT(L.r[0].key, L.r[j].key); --j)
L.r[j+1] = L.r[j]; // 记录后移
L.r[j+1] = L.r[0]; // 插入到正确位置
}
} // InsertSort;例2:关键字序列T= (21,25,49,25*,16,08),请写出直接插入排序的具体实现过程。;特点:因为R[1…i-1]是一个按关键字有序的有序序列,则可以利用折半查找实现在R[1…i-1]中查找R[i]的插入位置,如此实现的插入排序为折半插入排序。
限制:必须采用顺序存储方式。
;例:有6个记录,前5 个已排序的基础上,对第6个记录排序。
[ 15 27 36 53 69 ] 42
? low ?mid ? high
[ 15 27 36 53 69 ] 42
?low ? high
?mid
[ 15 27 36 53 69 ] 42
?high ?low
[ 15 27 36 42 53 69 ] ;2) 折半插入排序; 设待排序的关键码分别为 28,13,72,85,39,41,6,20。按二分法插入排序算法已使前七个记录有序,中间结果如下:;3)希尔(shell)排序(又称缩小增量排序);例:关键字序列 T=(49,38,65,97, 76, 13, 27, 49*,55, 04),请写出希尔排序的具体实现过程。;时间效率:;写出采用SHELL排序算法排序的每一趟的结果,并标出数据移动情况。
(125,11,22,34,15,44,76,100,8,14,20,2,5);9.3 交换排序; 1) 冒泡排序;冒泡排序的算法分析;2) 快速排序; 一趟快速排序采用从两头向中间扫描的办法。
假设原始数据已存于一个一维数组r中,具体的做法是:设两个指示器i和j,初始时i指向数组中的第一个数据,j指向最末一个数据。i先不动使j逐步前移,每次对二者所指的数据进行比较,当遇到r[i]大于r[j]的情况时,就将二者对调位置;然后令j固定使i逐步后移做数据比较,当遇到r[i]大于r[j] 时,又进行位置对调;然后又是i不动使j前移作数据比较;……;
如此反复进行,直至i与j两者相遇为止。;25*跑到了前面,不稳定!;例1:关键字序列 T=(21,25,49,25*,16,08),请写出快速排序的算法步骤。;例3:以关键字序
您可能关注的文档
最近下载
- 25题固定收益分析岗位常见面试问题含HR问题考察点及参考回答.pdf
- 韶关市2025届高三一模(综合测试一) 英语试卷(含答案).docx
- 工作报告及设计心得20160831.pdf VIP
- SPC导入的钢箱截面在生成变截面时,消隐显示各板件连接错乱.pdf VIP
- Lessonsinlifesaving英国短片剧本.docx VIP
- 2019年注册土木工程师(道路工程)考前培训南京班文件-李 雪.pdf VIP
- 上海市2018-2022年近五年中考数学试卷附答案.pdf VIP
- 城轨车站施工与维护——开挖作业.pptx VIP
- 城轨车站施工与维护——围护结构施工及基坑开挖.pptx VIP
- 铁道概论——单元7.7铁路专用通信系统.pptx VIP
文档评论(0)