ImageVerifierCode 换一换
格式:PPT , 页数:208 ,大小:1.19MB ,
资源ID:958436      下载积分:10 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-958436.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(概述插入排序交换排序选择排序归并排序基数排序外排序小结.PPT)为本站会员(国***)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

概述插入排序交换排序选择排序归并排序基数排序外排序小结.PPT

1、n 概述概述n 插入排序插入排序n 交换排序交换排序n 选择排序选择排序n 归并排序归并排序n 基数排序基数排序n 外排序外排序n 小结小结概述概述n 排序排序 : 将一组杂乱无章的数据按一定的规律顺将一组杂乱无章的数据按一定的规律顺次排列起来。次排列起来。 n 数据表数据表 (datalist): 它是待排序数据对象的有限它是待排序数据对象的有限集合。集合。n 关键码关键码 (key): 通常数据对象有多个通常数据对象有多个 属性域属性域 ,即,即多个数据成员组成,其中有一个属性域可用来多个数据成员组成,其中有一个属性域可用来区分对象,作为排序依据。该域即为关键码。区分对象,作为排序依据。该

2、域即为关键码。每个数据表用哪个属性域作为关键码,要视具每个数据表用哪个属性域作为关键码,要视具体的应用需要而定。即使是同一个表,在解决体的应用需要而定。即使是同一个表,在解决不同问题的场合也可能取不同的域做关键码。不同问题的场合也可能取不同的域做关键码。n 主关键码主关键码 : 如果在数据表中各个对象的关键码如果在数据表中各个对象的关键码互不相同,这种关键码即主关键码。按照主关互不相同,这种关键码即主关键码。按照主关键码进行排序,排序的结果是唯一的。键码进行排序,排序的结果是唯一的。n 次关键码次关键码 : 数据表中有些对象的关键码可能相数据表中有些对象的关键码可能相同,这种关键码称为次关键码

3、。按照次关键码同,这种关键码称为次关键码。按照次关键码进行排序,排序的结果可能不唯一。进行排序,排序的结果可能不唯一。n 排序算法的稳定性排序算法的稳定性 : 如果在对象序列中有两个如果在对象序列中有两个对象对象 ri和和 rj, 它们的关键码它们的关键码 ki = kj, 且在排且在排序之前,对象序之前,对象 ri排在排在 rj前面。如果在排序之后前面。如果在排序之后,对象,对象 ri仍在对象仍在对象 rj的前面,则称这个排序方的前面,则称这个排序方法是稳定的,否则称这个排序方法是不稳定的法是稳定的,否则称这个排序方法是不稳定的。n 内排序与外排序内排序与外排序 : 内排序是指在排序期间数据

4、内排序是指在排序期间数据对象全部存放在内存的排序;外排序是指在排对象全部存放在内存的排序;外排序是指在排序期间全部对象个数太多,不能同时存放在内序期间全部对象个数太多,不能同时存放在内存,必须根据排序过程的要求,不断在内、外存,必须根据排序过程的要求,不断在内、外存之间移动的排序。存之间移动的排序。n 排序的时间开销排序的时间开销 : 排序的时间开销是衡量算法排序的时间开销是衡量算法好坏的最重要的标志。好坏的最重要的标志。 排序的时间开销可用算排序的时间开销可用算法执行中的法执行中的 数据比较次数数据比较次数 与与 数据移动次数数据移动次数 来衡来衡量量 。各节给出算法运行时间代价的大略估算一

5、。各节给出算法运行时间代价的大略估算一般都般都 按平均情况按平均情况 进行估算。对于那些进行估算。对于那些 受对象关受对象关键码序列初始排列及对象个数影响较大的键码序列初始排列及对象个数影响较大的 , 需需要要 按最好情况按最好情况 和和 最坏情况最坏情况 进行估算进行估算 。n 静态排序静态排序 : 排序的过程是对数据对象本身进排序的过程是对数据对象本身进行物理地重排,经过比较和判断,将对象移行物理地重排,经过比较和判断,将对象移到合适的位置。这时,数据对象一般都存放到合适的位置。这时,数据对象一般都存放在一个顺序的表中。在一个顺序的表中。n 动态排序动态排序 : 给每个对象增加一个链接指针

6、,给每个对象增加一个链接指针,在排序的过程中不移动对象或传送数据,仅在排序的过程中不移动对象或传送数据,仅通过修改链接指针来改变对象之间的逻辑顺通过修改链接指针来改变对象之间的逻辑顺序,从而达到排序的目的。序,从而达到排序的目的。n 算法执行时所需的附加存储算法执行时所需的附加存储 : 评价算法好坏评价算法好坏的另一标准。的另一标准。n 静态排序过程中所用到的数据表类定义,体静态排序过程中所用到的数据表类定义,体现了抽象数据类型的思想。现了抽象数据类型的思想。待排序数据表的类定义待排序数据表的类定义#ifndef DATALIST_H#define DATALIST_H#include con

7、st int DefaultSize = 100; template class datalist template class Element private:Type key; /关键码field otherdata; /其它数据成员public:Element ( ) : key(0), otherdata(NULL) Type getKey ( ) return key; /提取关键码void setKey ( const Type x ) key = x; /修改Element int operator = ( Type int operator = ( Type template

8、class datalist public:datalist ( int MaxSz = DefaultSize ) : /构造函数MaxSize ( Maxsz ), CurrentSize (0) Vector = new Element MaxSz; void swap ( Element x = y; y = temp; private:Element * Vector; /存储向量int MaxSize, CurrentSize; /最大与当前个数插入排序插入排序 (Insert Sorting)n 直接插入排序的基本思想是:当插入第直接插入排序的基本思想是:当插入第 i (i 1)

9、 个对象时,前面的个对象时,前面的 V0, V1, , vi-1已经排好已经排好序。这时,用序。这时,用 vi的关键码与的关键码与 vi-1, vi-2, 的的关键码顺序进行比较,找到插入位置即将关键码顺序进行比较,找到插入位置即将 vi插插入,原来位置上的对象向后顺移。入,原来位置上的对象向后顺移。插入排序的基本方法是:每步将一个待排序的对插入排序的基本方法是:每步将一个待排序的对象,按其关键码大小,插入到前面已经排好序的象,按其关键码大小,插入到前面已经排好序的一组对象的适当位置上,直到对象全部插入为止一组对象的适当位置上,直到对象全部插入为止。直接插入排序直接插入排序 (Insert Sort)各趟排序结果21 25 49 25* 16 080 1 2 3 4 50 1 2 3 4 5 temp21 25 49 25* 16 08 25i = 10 1 2 3 4 5 temp21 25 49 25* 16 08 49i = 2

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。