1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8章 排序 8.1 考纲要求及分析 考纲要求 1. 排序的基本概念 2. 插入排序(直接插入排序、 折半插入排序) 3. 起泡排序 4. 简单选择排序 5. 希尔排序 6. 快速排序 7. 堆排序 8. 二路归并排序 9. 基数排序 10. 各种内部排序算法的比较 11. 内部排序算法的应用 第8章 排序 考纲分析 排序是比较重要的一章,本章的特点是即使是分值较小的选择题,也需要深刻理解各种排序方法的执行过程才能完成。本章要求: 1. 直接插入排序、起泡排序和简单选择排序是三种简单的排序方法,要求掌握算法的基本思想、排序过程、性能分析等; 2. 希尔排序是直接插入排序的改进,一般不要求掌握算法,如果考查排序过程,通常会给定增量序列,若题目没有给定增量序列,则增量序列为:,且没有除1以外的公因子,并且最后一个增量等于1; 3. 快速排序是起泡排序的改进,是最重要也是出题概率最大的一种排序方法,要求掌握快速排序的基本思想、一次划分以及快速排序的过程,快速排序算法的实现,性能分析等; 4. 堆排序是简单选择排序的改进,相对而言比较难。堆排序是利用堆的性质,通过堆顶元素的删除、调整等一系列操作确定最小记录(或最大记录)。要求掌握有关堆的数据特点、初始堆的建立、堆调整的算法以及执行过程、堆排序的执行过程以及性能分析等。 第8章 排序 考纲分析 归并排序算法思想比较简单,但非递归实现比较难,重点掌握一次归并的实现和归并排序的性能分析。基数排序不是基于比较的排序方法,在考试中出现的概率比较低,只要求掌握基数排序的分配和收集过程。 通过本章学习,需要深刻领会各种排序的思想、各种初始排列(正序、逆序、随机)下算法的执行特点、算法的性能分析(时间性能、空间性能、稳定性),以及算法的设计过程,能够在深刻理解各种排序方法的基础上对各种排序方法进行综合比较。各种排序方法不但要求会写出来,重要的是理解算法以及算法的执行过程,因此,复习时要手工运行算法,掌握算法运行过程中的某些规律。 第8章 排序 8.2 排序的基本概念 1. 考核知识点 1) 排序的定义 简言之,排序是将一个记录的任意序列重新排列成一个按关键码有序的序列。 【说明】:在排序问题中,通常将数据元素称为记录。 第8章 排序 8.2 排序的基本概念 1. 考核知识点 2) 排序基于的数据结构 从操作角度看,排序是对线性结构的一种操作,待排序记录可以用顺序存储结构或链接存储结构存储。 【说明】:不失一般性,为突出排序的主题,本章讨论的排序算法均采用顺序存储结构存储,并假定关键码为整型,且记录只有关键码一个数据项,即采用一维整型数组实现。另外,假定排序都是将待排序的记录序列排序为升序序列。 3) 正序、逆序 4) 排序算法的稳定性 【说明】:对于不稳定的排序算法,只要举出一个实例即可说明它的不稳定性;而对于稳定的排序算法,必须对算法进行分析从而得到稳定的特性。 第8章 排序 8.2 排序的基本概念 1. 考核知识点 5) 排序的分类 根据在排序过程中待排序的所有记录是否全部被放置在内存中,可将排序方法分为内排序和外排序两大类。内排序是指在排序的整个过程中,待排序的所有记录全部被放置在内存;外排序是指由于待排序的记录个数太多,不能同时放置在内存,而需要将一部分记录放置在内存,另一部分记录放置在外存,整个排序过程需要在内外存之间多次交换数据才能得到排序的结果。 第8章 排序 8.2 排序的基本概念 1. 考核知识点 5) 排序的分类 根据排序方法是否建立在关键码比较的基础,可以将排序方法分为基于比较的排序和不基于比较的排序。基于比较的排序方法主要通过关键码之间的比较和记录的移动这两种操作来实现;而不基于比较的排序方法是根据待排序数据的特点所采取的其他方法,通常没有大量的关键码之间的比较和记录的移动操作。 第8章 排序 8.2 排序的基本概念 1. 考核知识点 6) 基于比较的排序算法的性能 基于比较的内排序,在排序过程中通常需要进行下列两种基本操作: 比较:关键码之间的比较; 移动:记录从一个位置移动到另一个位置。 因此,排序算法的时间性能取决于在排序过程中关键码的比较次数和记录的移动次数。对于具有n个记录的序列进行基于比较的排序,其时间下界为O(nlong2n)。 排序算法的空间性能是执行算法所需要的辅助存储空间。辅助存储空间是指在待排序的记录个数一定的条件下,除了存放待排序记录占用的存储空间之外,执行算法所需要的其他存储空间。 另外:算法本身的复杂程度也是一个要考虑的因素。 8.2 排序的基本概念 典型题解析 选择题1:对任意的7个关键码进行排序,至少要进行( )次关键码之间的比较

文档评论(0)

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

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

1亿VIP精品文档

相关文档