- 1
- 0
- 约3.52千字
- 约 50页
- 2020-05-28 发布于山东
- 举报
数据结构数字媒体技术教研室 张靖第十章 内部排序内容提要排序概述插入排序交换排序选择排序归并排序排序概述排序(Sorting)将一个数据元素的任意序列重新排列成一个按关键字有序的序列内部排序:将待排序数据完全放在计算机内部存储器中进行排序的过程外部排序:借助外部存储器(如硬盘)存储排序数据的排序过程排序概述排序(Sorting)为什么要排序?排序概述排序的意义有序的数据集合便于查找和使用原始数据集合通常是无序的,需要在处理前对数据集合进行排序折半查找:基于有序的序列才能进行二叉排序树:构建过程即排序过程排序的定义设有含n个记录的序列为{R1, R2, …,Rn},其相应的关键字序列为{K1, K2, …,Kn},需要确定1,2,…,n的一种排列p1,p2,…pn,使其相应的关键字满足如下的非递减(或递增)关系:Kp1?Kp2 ? …? Kpn也就是使原序列成为按关键字有序的序列:{Rp1,Rp2,…Rpn}排序的稳定性主关键字:唯一标识一个数据元素按主关键字排序,得到的有序序列是唯一的次关键字:标识一组数据元素按次关键排序,排序结果不唯一,因为存在相等的元素概述 – 排序的稳定性例:对序列{12, 32, 16, 32, 5, 17 }进行排序R1R2R3R4R5R612321632517R5R1R3R6R2R451216173232R5R1R3R6R4R251216173232概述 – 排序的稳定性设Ki=Kj(i≠j),且在排序前的序列中Ri领先于Rj如果在排序后的序列中Ri仍然领先于Rj,则称所用的排序方法是稳定的如果在排序后的序列中Rj可能领先于Ri,则称所用的排序方法是不稳定的排序算法的分类和性能按排序中遵循的原则:插入排序交换排序选择排序归并排序基数排序排序算法的分类和性能按排序工作量来分:简单排序方法,复杂度O(n2)先进排序方法,复杂度O(nlogn)基数排序,复杂度O(d·n)学习目标掌握典型排序算法的逻辑过程了解典型排序算法的实现了解典型排序算法所依据的原则排序的基本操作比较两个关键字的大小将记录从一个位置移动到另一个位置可以通过采取合理的存储方式来避免移动排序序列的存储方式待排序序列可以由3种存储方式:顺序存储静态链表存储待排序记录本身做顺序存储,另设一个指示各记录在排序中位置的向量。在排序中,不移动记录,只移动向量表中的地址地址排序内容提要排序概述插入排序交换排序选择排序归并排序插入排序直接插入排序将一个记录插入到已排序好的有序表中,从而得到新的、记录数增1的有序表最简单的排序方法插入排序例:有待排序序列:{49,38,65,97,76,13,27,49}设前4个记录已经执行完插入排序,得到有序序列:{38,49,65,97}现要将第5个记录76插入其中,得到含有5个记录的有序序列插入排序{49,38,65,97,76,13,27,49}思路:先在当前有序序列中进行查找,确定76应当插入的位置,再进行插入操作得到新有序序列:{38,49,65,76,97}以上过程称为一趟直接插入排序插入排序49386576977676···插入排序{49,38,65,97,76,13,27,49}完成全部记录排序共需要8趟操作1493865977613274923849659776132749直接插入排序338496597761327494384965977613274953849657697132749613384965769727497132738496576974981327384949657697插入排序特点算法简洁,容易实现空间:只需要一个记录的辅助空间时间:基本操作:比较关键字大小和移动记录时间复杂度:O(n2)内容提要排序概述插入排序交换排序选择排序归并排序交换排序借助“交换”进行排序冒泡排序(Bubble Sort)快速排序(Quick Sort)交换排序 - 冒泡排序水中气泡:从水底一直上浮到水面冒泡排序:每一趟排序一定会将关键字最大的元素交换到序列末尾交换排序 - 冒泡排序冒泡排序算法对于第一趟冒泡排序:将第一、二个记录的关键字相比较如果逆序,则将二者交换然后比较第二、三个记录以此类推,直至第n-1和第n个记录关键字相比较结果:全序列中关键字最大的记录被交换到序列末尾交换排序 - 冒泡排序4949383865659797767613132727499749交换排序 - 冒泡排序冒泡排序算法对于第二趟冒泡排序:对第1到第n-1个记录组成的子序列进行冒泡排序结果:全序列中关键字第二大的记录被交换到序列倒数第二位置交换排序 - 冒泡排序冒泡排序算法第i趟气泡排序:从第1到n-i+1个记录组成的子序列进行冒泡排序其中关键字最大的记录被交换到第n-i+1的位置0493865977613274913849657
您可能关注的文档
- 3月第二科冲刺讲座题(上).docx
- 3月第二科冲刺讲座题(中补充).docx
- 2019年3月第三部分冲刺题.docx
- 3月第三科冲刺讲座题(上).docx
- 格莱姆讲义科二第2章 assurance and compliance engagement鉴证与合规业务.pdf
- 格莱姆讲义科二第3章 financial,environmental,and consulting engagements财务、环境和咨询审计.pdf
- 格莱姆讲义科二第5章 engagement procedures and supervision 业务程序及督导-英文.pdf
- 格莱姆讲义科二第6章 communicate results and monitor outcomes沟通结论和监督结果-英文.pdf
- 格莱姆讲义科二第7章 fraud risks and controls舞弊风险和控制.pdf
- 格莱姆讲义第三科1.pdf
最近下载
- 妊娠期肝内胆汁淤积症临床诊治和管理指南(2024版)课件.pptx VIP
- (81格)舒尔特方格-儿童注意力训练(每日一练,共25份).docx VIP
- (81格)舒尔特方格-儿童注意力训练(每日一练,共27份).docx VIP
- 盆腔炎性疾病医学课件.ppt VIP
- (81格)舒尔特方格-儿童注意力训练(每日一练,共20份).docx VIP
- (25格)舒尔特方格练习题儿童专注力训练(每日一练,共25份).docx VIP
- 农村会计试题及答案.docx VIP
- 2025年春新课程能力培养七年级英语下册人教版答案.pdf VIP
- 公务员财务面试面试题及答案.doc VIP
- 重庆市普通高校招生考生综合信息表.doc VIP
原创力文档

文档评论(0)