- 16
- 0
- 约6.22千字
- 约 35页
- 2018-06-19 发布于福建
- 举报
3.7 排序 3.7.1 排序的基本概念 3.7.2 交换排序 3.7.3 选择排序 3.7.4 插入序 3.7.5 归并排序 3.7.6 内部排序方法的比较和选择 排序 排序(sorting)是计算机程序设计中的一种重要操作,它的功能是将一个数据元素(或记录)的任意序列,重新排列成一个按关键字有序的序列。 由于待排序的记录数量不同,使得排序过程中涉及的存储器不同,可将排序方法分为两大类:一类是内部排序,指的是待排序记录存放在计算机存储器中进行的排序过程;另一类是外部排序,指的是待排序记录的数量很大,以致内存一次不能容纳全部记录,在排序过程中对外存进行访问的排序过程。 排序的几个基本概念 数据表(Data List) 待排序的数据对象的有限集合。 关键字(Key) 作为排序依据的数据对象中的属性域。 主关键字 不同的数据对象若关键字互不相同,则这种关键字称为主关键字。 排序的确切定义 使一组任意排列的对象变成一组按关键字线性有序的对象。 排序的几个基本概念(续) 排序算法的稳定性 判断标准:关键字相同的数据(采用基于次关键词排序)对象在排序过程中是否保持前后次序不变。如 2, 2*,1,排序后若为1, 2*, 2 则该排序方法是不稳定的。 内排序与外排序 区分标准:排序过程是否全部在内存进行。 排序的时间开销 它是衡量算法好坏的最重要的标志。通常用算法执行中的数据比较次数和数据移动次数来衡量。 排序的方法有很多,但简单地判断那一种算法最好,以便能够普遍选用则是困难的。 评价排序算法好坏的标准主要有两条:算法执行所需要的时间和所需要的附加空间。另外,算法本身的复杂程度也是需要考虑的一个因素。 排序算法所需要的附加空间一般都不大,矛盾并不突出。而排序是一种经常执行的一种运算,往往属于系统的核心部分,因此排序的时间开销是算法好坏的最重要的标志。 为简单起见,数据的存储结构采用记录数组形式, 同时假定关键字是整数。记录数组的类型说明如 下: typedef struct { int key; datatype other; } rectype; ?rectype R[n]; 其中n为记录总数加1 基本思想是:是通过对无序表从前向后(从下标较小的元素开始),依次比较相邻元素的关键字,若发现逆序则交换,使关键字较大的元素逐渐从前部移向后部(从下标较小的单元移向下标较大的单元)。递增排序 排序的过程中,各元素不断接近自己的位置,如果一趟比较下来没有进行过交换,就说明序列有序,因此要在排序过程中设置一个标志F判断元素是否进行过交换。从而减少不必要的比较。 2、快速排序(选学) 简单选择排序算法 SELSORT (r, n) for i=1 to n-1 j-i for k=i+1 to n if (r[j] r[k]) then j-k end (k) if (ji) then r[i]-r[j] //r[i]与r[j]交换// end (i) Return 2、二叉树选择排序(选学) 3 、堆排序(选学) 线性插入排序举例有序列:{20, 6,15,7,3} r[0] r[1] r[2] r[3] r[4] r[5] 20 6 15 7 3 6 [20] 6 15 7 3 [6 20] 15 7 3 [6 15 20] 7 3 [6 7 15 20] 3 [3 6 7 15 20] 算法中引入附加记录R[0]有两个作用:其一是进入查找循环之前,它保存了R[i]的副本,使不至于因记录的后移而丢失R[i]中的内容;其二是在while循环“监视”下标变量j是否越界,一旦越界(即j1),R[0]自动控制while循环的结束,从而避免了在while循环内的每一次都要检测j是否越界(即省略了循环条件j=1)。因此,我们把R[0]称为“监视哨”。 3.7.5 归并排序 小结 排序(sorting)是计算机程序设计中的一种重要操作,它的功能是将一个数据元素(或记录)的任意序列,重新排列成一个按关键字有序的序列。本章主要介绍了排序的概念及其基本思想,排序过程和实现算法,简述了各种算法的时间复杂度和空间复杂度。一个好的排序算法所需要的比较次数和存储空间都应该较少,但从本章讨论的各
您可能关注的文档
- 第3课时--让家更美好.ppt
- 第3课-土地改革-课件.ppt
- 第3课《盛唐气象》课件-.ppt
- 第3课-王安石变法历史作用.ppt
- 第3课土地改革知识梳理课件.ppt
- 第3课-忠实巡逻兵.ppt
- 第4节:光折射--初二物理.ppt
- 第3课-走遍天下书为侣-第二课时.ppt
- 第4节-离子晶体-上课用.ppt
- 第4章--CSS基础.ppt
- 广东省广州省实验中学教育集团2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州大学附属中学2025-2026学年八年级上学期奥班期中物理试题(解析版).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(含答案).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(解析版).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 2026《中国人寿上海分公司营销员培训体系优化研究》18000字.docx
- 《生物探究性实验教学》中小学教师资格模拟试题.docx
最近下载
- 组织生活会前征求意见和建议的情况报告集合.docx VIP
- 2020年全国高考全国一卷英语真题(含解析).pdf VIP
- _中国男性乳腺癌临床诊治实践指南(2023版).pdf VIP
- 标准图集-17J008 挡土墙(重力式、衡重式、悬臂式) 无水印.pdf VIP
- 管理沟通——原理、策略及应用(第三版)课件全套 赵洱岽 第1--14章 管理沟通概论---数字化时代的沟通.pptx
- 初二物理上册质量与密度练习题难题带答案1.pdf VIP
- DB31_T 416-2008 城市道路路名牌(法规规范).pdf VIP
- V83-CV100出入口车牌识别高清网络一体化摄像机操作手册20180427.pdf VIP
- 《再别康桥》优秀课件.ppt VIP
- 2026届高考政治总复习选必一高考主观试题答题模型总结(2023-2025年真题适配版).pdf VIP
原创力文档

文档评论(0)