数据结构--第九章课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《数据结构--第九章课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 第九 课件
- 资源描述:
-
1、数据结构-第九章 查找1第八章第八章 集合与检索集合与检索8 8.1 .1 静态查找表静态查找表8 8.2 .2 动态查找表动态查找表8 8.3 .3 哈希表哈希表 查找是计算机中最重要、最频繁的应用之一。被查查找是计算机中最重要、最频繁的应用之一。被查找的数据对象逻辑结构可认为是找的数据对象逻辑结构可认为是集合集合,选取不同的存储,选取不同的存储结构,查找以及其它操作的效率也会有所不同。结构,查找以及其它操作的效率也会有所不同。数据结构-第九章 查找2术语术语查找查找 指定某个值,在查找表中确定是否存在一个记录,该记录的关键字等于给定值。查找表查找表 是同一类型的记录(数据元素)的集合。关键
2、字关键字 是记录(数据元素)中的某个数据项的值。主关键字主关键字 该关键字可以唯一地标识一个记录。次关键字次关键字 该关键字不能唯一标识一个记录。静态查找表静态查找表 对查找表的查找仅是以查询为目的,不改动查找表中的数据。动态查找表动态查找表 在查找的过程中同时插入不存在的 记录,或删除某个已存在的记录。查找成功查找成功 查找表中存在满足查找条件的记录。查找不成功查找不成功 查找表中不存在满足查找条件的记录。数据结构-第九章 查找3内查找内查找 整个查找过程都在内存中进行。外查找外查找 在查找过程中需要访问外存。平均查找长度平均查找长度ASLASL 为确定记录在查找表中的位置,需将关键字和给定
3、值比较次数的期望值。查找成功时的ASL计算方法:n:记录的个数 pi:查找第i个记录的概率(不特别 声明时认为等概率 pi=1/n)ci:找到第i个记录所需的比较次数本章约定:关键字的类型为整型niiicpASL1数据结构-第九章 查找48.1 8.1 静态查找表静态查找表 不考虑在查找的同时修改表不考虑在查找的同时修改表8.1.1 8.1.1 顺序表的查找顺序表的查找 (a1,a2,.an)0 1 2 n r0.n a1 a2 an r0.key=K算法描述算法描述int SeqSearch(Seqlist R,KeyType K)R0.key=K;for(i=n;Ri!=K;i-);ret
4、urn(i);/SeqSearch#define n 100Typedef struct KeyType key;InfoType otherinfo;NodeType:Typedef NodeType Seqlistn+1;数据结构-第九章 查找5程序设计技巧程序设计技巧 设置监视哨R0,提高算法效率。性能分析性能分析 空间复杂度:一个辅助空间。时间复杂度:1)查找成功时的平均查找长度 设表中各记录查找概率相等 ASLs(n)=(1+2+.+n)/n=(n+1)/22)查找不成功时的平均查找长度 ASLf=n+1算法特点算法特点 此算法也适合链式存储结构 n很大时查找效率较低 改进措施:非等
5、概率查找时,可将查找概率高的记录尽量排在表前部。niiiCP1数据结构-第九章 查找68.1.2 8.1.2 有序表的查找有序表的查找 满足 Ri.key Ri+1.key,1 i n折半折半(对半对半/二分二分)查找法查找法 0 1 2 3 4 5 6 7 8 9 10 11 05 13 19 21 37 56 64 75 80 88 92 low mid high =(low+high)/2 K=21 l h m K=85 l h m 1 11 6 1 11 6 1 5 3 7 11 9 4 5 4 10 11 10 10 9数据结构-第九章 查找7算法描述算法描述int BinSearc
6、h(Seqlist R,KeyType K)low=1;high=n;while(lowK)high=mid-1;else low=mid+1;return(0);/BinSearch数据结构-第九章 查找8性能分析性能分析 h=log2n+1 同完全二叉树,二叉树性质4成功查找时的平均查找长度:ASLs=不成功查找时的查找长度:h-1或h次特点特点 查找效率高,但需有序,且无法在链表上实现。1)1(log1)1(log1212211nnnnjnhjj(n50)判定树 -13-46-79-101-22-34-55-67-88-910-1111-639147102581112h外结点内结点=数据
展开阅读全文