数据结构各种排序方法的综合比较

上传人:枫** 文档编号:487759406 上传时间:2023-12-20 格式:DOCX 页数:5 大小:20.74KB
返回 下载 相关 举报
数据结构各种排序方法的综合比较_第1页
第1页 / 共5页
数据结构各种排序方法的综合比较_第2页
第2页 / 共5页
数据结构各种排序方法的综合比较_第3页
第3页 / 共5页
数据结构各种排序方法的综合比较_第4页
第4页 / 共5页
数据结构各种排序方法的综合比较_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《数据结构各种排序方法的综合比较》由会员分享,可在线阅读,更多相关《数据结构各种排序方法的综合比较(5页珍藏版)》请在金锄头文库上搜索。

1、数据结构各种排序方法的综合比较结论:排序方法 平均时间 最坏时间辅助存储简单排序 O(n2) 快速排序 O(nlogn) 堆排序 O(nlogn) 归并排序 O(nlogn)O(n2) O(1)O(n2) O(logn)O(nlogn) O(1)O(nlogn) O(n)基数排序 O(d(n+rd) O(d(n+rd) O(rd)PS:直接插入排序、冒泡排序为简单排序,希尔排序、堆排序、快速排序为不稳定排序一、时间性能按平均的时间性能来分,有三类排序方法:时间复杂度为O(nlogn)的方法有:快速排序、堆排序和归并排序,其中以快速排序为最好; 时间复杂度为O(n2)的有:直接插入排序、起泡排序

2、和简单选择排序,其中以直接插入为 最好,特别是对那些对关键字近似有序的记录序列尤为如此;时间复杂度为O(n)的排序方法只有,基数排序。当待排记录序列按关键字顺序有序时,直接插入排序和起泡排序能达到O(n)的时间复杂度; 而对于快速排序而言,这是最不好的情况,此时的时间性能蜕化为O(n2),因此是应该尽量 避免的情况。简单选择排序、堆排序和归并排序的时间性能不随记录序列中关键字的分布 而改变。二、空间性能指的是排序过程中所需的辅助空间大小。1. 所有的简单排序方法(包括:直接插入、起泡和简单选择)和堆排序的空间复杂度为0(1); 2快速排序为O(logn),为栈所需的辅助空间;3.归并排序所需辅

3、助空间最多,其空间复杂度为O(n );4链式基数排序需附设队列首尾指针,则空间复杂度为O(rd )。三、排序方法的稳定性能1. 稳定的排序方法指的是,对于两个关键字相等的记录,它们在序列中的相对位置,在排 序之前和经过排序之后,没有改变。2. 当对多关键字的记录序列进行LSD方法排序时,必须采用稳定的排序方法。3. 对于不稳定的排序方法,只要能举出一个实例说明即可。4. 快速排序和堆排序是不稳定的排序方法二、插入排序1、直接插入排序基本操作是将一个记录插入到已排好序的有序表中,从而得到一个新的、记录数增1 的有序 表。排序过程:3849659776132749.3849657697132749

4、1338496576972749.132738496576974913273849496576972、折半插入排序在直接插入排序中,为了找到插入位置,采用了顺序查找的方法。为了提高查找速度,可以 采用折半查找,这种排序称折半插入排序。3、2路插入排序为减少排序过程中移动记录的次数,在折半插入排序的基础上加以改进:i=1i=2i=3i=4i=5i=6i=7i=849 first49final49494949494938first6538finalfirst659738finalfirst65769738finalfirst6576971338finalfirst657697132738final

5、first49657697132738final first4938659778132749.三、快速排序1、起泡排序首先将第一个记录的关键字和第二个记录的关键字进行比较,若为逆序,则将两个记录交换 之,然后比较第二个记录和第三个记录的关键字。直至第 n-1 个记录和第 n 个记录的关键字 进行过比较为止。然后进行第二趟起泡排序,对前n-1个记录进行同样操作。.直到在某趟排序过程中没有进行过交换记录的操作为止。4938383838131338494949132727656565132738389776132749497613274949132749652749784997初始 第一趟 第二趟

6、第三趟 第四趟 第五趟 第六趟2、快速排序通过一趟排序将待排记录分割成独立的两部分,其中一部分记录的关键字均比另一部分记录 的关键字小,则可分别对这两部分记录继续进行排序,以达到整个序列有序。初始关键字4938659776132749ijj1次交换之后27386597761349iij2次交换之后27389776136549ijj3次交换之后27381397766549iij4次交换之后27381376976549ijj完成一趟排序2738134976976549初始状态4938659776132749一次划分2738134976976549分别进行132738结束结束496576974965结束结束有序序列13273849496576

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号