数据结构(牛小飞)4排序比较和习题.ppt
《数据结构(牛小飞)4排序比较和习题.ppt》由会员分享,可在线阅读,更多相关《数据结构(牛小飞)4排序比较和习题.ppt(28页珍藏版)》请在三一办公上搜索。
1、总结和习题,习题课,各种排序方法的比较,本章的主要内部排序方法,本章的主要内部排序方法,本章研究的内部排序方法主要有:,1.插入排序,1)基本思想:,插入排序:将无序子序列中的一个或几个记录“插入”到有序序列中,从而增加记录的有序子序列的长度。,本章的主要排序方法,2)常见的插入排序算法,a.直接插入排序(基于顺序查找),b.希尔排序(基于逐趟缩小增量),O(n2),是一种稳定的排序方法,是一种不稳定的排序方法,本章的主要排序方法,2.交换类排序,1)基本思想:,依次两两比较相邻关键字,并交换不满足排序要求的关键字,直至全部有序。,本章的主要排序方法,2)常见的交换类排序算法,a.起泡排序,b
2、.快速排序,O(n2),是一种稳定的排序方法,是一种不稳定的排序方法,O(nlogn),本章的主要排序方法,3.选择类排序,1)基本思想:,每一趟从待排序的n-i+1(i=1,2,3,n-1)个记录中选出关键字最小的记录,作为有序序列中第i个记录,直到全部记录排序完毕。,本章的主要内部排序方法,2)常见的选择类排序算法,O(n2),是一种不稳定的排序方法,是一种不稳定的排序方法,O(nlogn),a.简单选择排序,b.堆选择排序,本章的主要内部排序方法,4.归并排序,1)基本思想:,将两个或两个以上的有序子序列“归并”为一个有序序列。,时间复杂度为(nlogn)。,是一种稳定的排序方法,本章的
3、主要内部排序方法,各种内部排序方法的比较,5.链式基数排序,1)基本思想:,在多关键字的记录序列中,每个关键字的取值范围相同,则按LSD法进行排序时,可以采用“分配-收集”的方法,不需要进行关键字间的比较。,时间复杂度为O(d(n+rd),是稳定的排序方法,各种内部排序方法的比较,1.平均的时间性能,基数排序,时间复杂度为 O(nlogn):,快速排序、堆排序和归并排序,时间复杂度为 O(n2):,直接插入排序、起泡排序和简单选择排序,时间复杂度为 O(d(n+rd):,一、时间性能,各种内部排序方法的比较,2.当待排记录序列按关键字顺序有序时,直接插入排序和起泡排序能达到O(n)的时间复杂度
4、快速排序的时间性能蜕化为O(n2)。,3.简单选择排序、堆排序和归并排序的时间性能不随记录序列中关键字的分布而改变。,各种内部排序方法的比较,二、空间性能,指的是排序过程中所需的辅助空间大小,1.所有的简单排序方法(包括:直接插入、起泡和简单选择)和堆排序的空间复杂度为O(1);,2.快速排序为O(logn),为递归程序执行过程中,栈所需的辅助空间;,各种内部排序方法的比较,3.归并排序所需辅助空间最多,其空间复杂度为 O(n);,4.链式基数排序需附设队列首尾指针,则空间复杂度为 O(rd)。,各种内部排序方法的比较,三、排序方法的稳定性能,1.稳定的排序方法指的是,对于两个关键字相等的记录
5、,它们在序列中的相对位置,在排序之前和经过排序之后,没有改变。,排序之前:Ri(K)Rj(K),排序之后:Ri(K)Rj(K),各种内部排序方法的比较,2.当对多关键字的记录序列进行LSD方法排序时,必须采用稳定的排序方法。,3.对于不稳定的排序方法,只要能举出一个实例说明即可。,4.快速排序、堆排序和希尔排序是不稳定的排序方法。,例如:对 4,3,4,2 进行快速排序,得到 2,3,4,4,各种内部排序方法的比较,四、关于“排序方法的时间复杂度的下限”,本章讨论的各种排序方法,除基数排序外,其它方法都是基于“比较关键字”进行排序的排序方法。,可以证明,这类排序法可能达到的最快的时间复杂度为O
6、(nlogn)。(基数排序不是基于“比较关键字”的排序方法,所以它不受这个限制。),各种内部排序方法的比较,例如:对三个关键字进行排序的判定树如下:,K1K3,K1K2,K1K3,K2K3,K2 K3,K2K1K3,K1K2K3,K3K2K1,K2K3K1,K3K1K2,K1K3K2,树上的每一次“比较”都是必要的;,树上的叶子结点包含所有可能情况。,各种内部排序方法的比较,一般情况下,对n个关键字进行排序,可能得到的结果有n!种,由于含n!个叶子结点的二叉树的深度不小于log2(n!)+1,则对 n 个关键字进行排序的比较次数至少是 log2(n!)nlog2n(斯蒂林近似公式)。,所以,基
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 牛小飞 排序 比较 习题
链接地址:https://www.31ppt.com/p-4980155.html