版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、零基础学算法,第4章:常用算法排序,课程安排,4.1 排序概述 4.2 冒泡排序法 4.3 快速排序法 4.4 简单选择排序法 4.5 堆排序法 4.6 直接插入排序法 4.7 希尔(shell)排序法 4.8 合并排序法 4.9 排序算法的选择,4.1 排序概述,内部排序 外部排序,4.2 冒泡排序法,冒泡排序法的基本思想是:对待排序记录关键字从后往前(逆序)进行多遍扫描,当发现相邻两个关键字的次序与排序要求的规则不符时,就将这两个记录进行交换。这样,关键字较小的记录将逐渐从后面向前面移动,就象气泡在水中向上浮一样,所以该算法也称为气泡排序法。,4.2.1 冒泡排序法,4.2 冒泡排序法,为
2、了提升冒泡排序法的效率,可对BubbleSort函数进行改进,当在某一遍扫描时,发现数据都已经按顺序排列了,就不再进行后继的扫描,而结束排序过程。,4.2.2 改进的冒泡排序法,4.3 快速排序法,快速排序使用分治策略来把待排序数据序列分为两个子序列,具体步骤为: (1)从数列中挑出一个元素,称该元素为“基准”。 (2)扫描一遍数列,将所有比“基准”小的元素排在基准前面,所有比“基准”大的元素排在基准后面。 (3)通过递归,将各子序列划分为更小的序列,直到把小于基准值元素的子数列和大于基准值元素的子数列排序。,4.4 简单选择排序法,选择排序(Selection Sort)的基本思想:对n个记
3、录进行扫描,选择最小的记录,将其输出,接着在剩下的n-1个记录中扫描,选择最小的记录将其输出,不断重复这个过程,直到只剩一个记录为止。,4.5 堆排序法,堆是一个完全二叉树,树中每个结点对应于原始数据的一个记录,并且每个结点应满足以下条件:非叶结点的数据大于或等于其左、右孩子结点的数据(若是按从大到小的顺序排序,则要求非叶结点的数据小于或等于其左、右孩子结点的数据)。 由堆的定义可看出,其根结点为最大值,堆排序就是利用这一特点进行的。堆排序过程包括两个阶段: (1)将无序的数据构成堆(即用无序数据生成满足堆定义的完全二叉树)。 (2)利用堆排序(即用上一步生成的堆输出有序的数据)。,4.5 堆
4、排序法,4.5 堆排序法,4.6 直接插入排序法,插入排序(Insertion Sort)的算法描述是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,在从后向前扫描过程中,需要反复把已排序元素逐步向后移动,为最新元素提供插入空间。,4.7 希尔排序法,希尔排序又称为缩小增量排序,也属于插入排序类的算法,是对直接插入排序的一种改进。 基本思想就是:将需要排序的序列划分为若干个较小的序列,对这些序列进行直接插入排序,通过这样的操作可使用需要排序的数列基本有序,最后再使用一次直接插入排序。这样,首先对数量较小的序列进行直接插入排序可提高效率,最后对基本有序的序列进行直拦插入排序,也可提高效率,从而使整个排序过程的效率得到提升。,4.8 合并排序法,合并排序(Merge Sort)就是将两个或多个有序表合并成一个有序表。,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025下半年四川巴中市南江县考核招聘高中紧缺学科教师44人备考题库及答案详解一套
- 2025年12月深圳市公办中小学面向2026年应届毕业生招聘教师888人备考题库含答案详解
- 2025国家电投集团中国电力招聘26人备考题库及完整答案详解一套
- 2026年营口市老边区校园招聘教师24人备考题库(辽宁师范大学专场)及参考答案详解
- 广东广东省阳春市2025年下半年“粤聚英才粤见未来”引进各类高层次(急需紧缺)人才笔试历年参考题库附带答案详解
- 广东广东五华县2025年“人才团圆”笔试历年参考题库附带答案详解
- 2026江苏南京医科大学药学院招聘具有博士后经历的事业编制人员1人备考题库及完整答案详解1套
- 2025湖北神农架林区实验小学附属幼儿园保安及食堂员工招聘3人备考题库及答案详解参考
- 天津2025年天津市药品化妆品审评查验公开招聘高层次和紧缺人才笔试历年参考题库附带答案详解
- 四川2025年四川威远县部分事业单位面向全县选调8人笔试历年参考题库附带答案详解
- 电力系统调频辅助服务市场交易实施细则
- 风电、光伏项目前期及建设手续办理流程汇编
- DB41T 1522-2018 可燃气体和有毒气体报警仪检查检测技术规范
- 内河船舶制造行业发展前景及投资风险预测分析报告
- QBT 1815-2002 指甲钳行业标准
- NeuViz 16 射线计算机断层摄影设备产品信息手
- 2021修订《城市规划设计计费指导意见》
- 吕梁职业技术学院单招《英语》考试复习题库(含答案)
- 叔叔在侄子订婚宴致辞
- 电子地图的基本构成与数据类型
- 2023上海物理水平等级考+答案
评论
0/150
提交评论