直接插入排序算法的性能分析5折半插入排序定义.PPT

直接插入排序算法的性能分析5折半插入排序定义.PPT

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

1 1 课堂小结 重点: 直接插入排序算法思想 难点: 算法的实现及性能分析 *Company Logo *Company Logo * * *Company Logo *Company Logo *Company Logo *Company Logo * * *Company Logo *Company Logo 课程:算法与数据结构 主讲:刘灵丽 课题:排序基本概念和插入排序 复习 195 100 95 XXX 1002 180 92 88 XXX 1001 … XXX XXX XXX 姓名 … … … … 198 98 100 1005 195 95 100 1004 170 80 90 1003 总分 数学成绩 语文成绩 学号 表一 表一(未按总分排列) 复习 198 98 100 XXX 1005 180 92 88 XXX 1001 195 100 95 XXX 1002 … XXX XXX 姓名 … … … … 170 80 90 1003 195 95 100 1004 总分 数学成绩 语文成绩 学号 表一 表二(按总分排列) 排序基本概念和插入排序 1、排序的基本概念 3、直接插入排序算法的实现 2、直接插入排序算法的基本思想 4、直接插入排序算法的性能分析 5、折半插入排序 定义: 将数据元素的一个任意序列,重新排列成一个 按关键字有序的序列-----以便于查找。 主关键字:若关键字在表中各个数据元素的值互不相同, 按主关键字排序结果唯一。 次关键字:若关键字在表中有些数据元素的值相同, 按次关键字排序结果可能不唯一。 稳定性: 关键字相同的数据对象在排序前后相对次序 仍保持不变,则该排序方法是稳定的;否则不稳定。 内部排序:待排序记录全部存放在内存。 外部排序:内存无法容纳所有记录,排序过程中还需访问外存。 10.1 排序的基本概念 排序算法的分类: 插入排序:直接插入排序、折半插入排序、希尔排序 交换排序:冒泡排序、快速排序 选择排序:简单选择排序、堆排序 归并排序:2-路归并排序 基数排序:多关键码排序、链式基数排序 从以下几方面学习排序算法 基本思想 算法实现 时间性能 空间性能 稳定性 适用情况(算法本身的繁杂程度) 2 10.2.1 直接插入排序 1、基本思想:仅有一个记录的表是有序的,对n个记录的表,可从第2个记录开始直到第n个记录,逐个向有序表中进行插入操作,从而得到n个按关键字有序的表。 有序序列 无序序列 r1 r2 ri-1 ri rn ri+1 … … r1 r2 ri-1 ri … rn ri+1 … 如何确定待插入记录的插入位置? 10.2.1 直接插入排序 2、需解决的关键问题: 初始状态 49 38 65 97 76 13 27 49 R0 R1 R2 R3 R4 R5 R6 R7 R8 i =2 i =3 38 49 65 97 76 13 27 49 i =4 38 49 65 97 76 13 27 49 i =5 38 49 65 76 97 13 27 49 76 i =6 38 49 65 76 97 13 27 49 13 i =7 38 49 65 76 97 13 27 49 27 i =8 38 49 65 76 97 13 27 49 49 49 38 65 97 76 13 27 49 38 49 38 7 趟 排序 1 趟 排序 2 趟 排序 排序过程: 先将序列中第 1 个记录看成是一个有序子序列, 然后从第 2 个记录开始,逐个进行插入,直至整个序列有序。 10.2.1 直接插入排序(例1) 2 10.2.1 直接插入排序 3、算法 演示:程序1。 2 10.2.1 直接插入排序 4、时间复杂度 排序中的两个基本操作:(关键字间的)比较和(记录的)移动。 最好情况(正序): 总比较次数=n-1次 总移动次数=0次 最坏情况(逆序): 总比较次数 总移动次数 平均情况:直接插入排序的时间复杂度为T(n)=O(n2) 。 2 10.2.1 直接插入排序 6、空间性能:仅用了i、j和R[0]3个辅助变量, 与问题规模n无关。 S(n)=O(1) 7、R

文档评论(0)

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

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

1亿VIP精品文档

相关文档