数据结构第八章.ppt
《数据结构第八章.ppt》由会员分享,可在线阅读,更多相关《数据结构第八章.ppt(84页珍藏版)》请在第壹文秘上搜索。
1、 数据结构数据结构 计算机科学与计算机科学与技术学院技术学院2第九章第九章 查找查找34567查找成功时查找成功时,顺序查找的平均查找长度为:,顺序查找的平均查找长度为:查找不成功时查找不成功时,关键码的比较次数总是,关键码的比较次数总是n+1n+1次次niiicpASL12/ ) 1() 1(11ninpcpASLniniiiisq891005 13 19 21 37 56 64 75 80 88 9205 13 19 21 37 56 64 75 80 88 9205 13 19 21 37 56 64 75 80 88 92查找查找K=85K=85的过程(查找失败)的过程(查找失败)05
2、 13 19 21 37 56 64 75 80 88 92 11从折半查找过程看,以表的中点为比较对象,并从折半查找过程看,以表的中点为比较对象,并以中点将表分割为两个子表,对定位到的子表继以中点将表分割为两个子表,对定位到的子表继续这种操作。因而对表中每个数据元素的查找过续这种操作。因而对表中每个数据元素的查找过程可用二叉树描述,称此描述查找过程的二叉树程可用二叉树描述,称此描述查找过程的二叉树为为判定树判定树。查找表中任一元素的过程,即是判定树中从根到查找表中任一元素的过程,即是判定树中从根到该元素结点路径上各结点关键码的比较次数,也该元素结点路径上各结点关键码的比较次数,也即该即该元素
3、结点在树中的层次数元素结点在树中的层次数。1205 13 19 21 37 56 64 75 80 88 92927537138864215801956判定树:判定树: 借助于判定树很容易求得二分查找的平均查找长度。借助于判定树很容易求得二分查找的平均查找长度。设结点总数为:设结点总数为: 树中第树中第 k 层上的结点个数不超过:层上的结点个数不超过:12 hn12k13因此,在等概率假设下,二分查找的平均查找长度为:因此,在等概率假设下,二分查找的平均查找长度为: 二分查找的算法复杂度为:二分查找的算法复杂度为: 优点:优点:查找的效率较高查找的效率较高 缺点:缺点:要求被查找序列事先按关键
4、字排好序,而排要求被查找序列事先按关键字排好序,而排序本身是一种很费时的运算;另外,二分查找只适用序本身是一种很费时的运算;另外,二分查找只适用于顺序存储结构。于顺序存储结构。1-) 1(log1) 1(log12.2221 1221110nnnnknCPASLnikiibn)logO(2n14IDi存放第存放第 i 块中的最大关键字块中的最大关键字及该块在查找表中的起始位置。由于表及该块在查找表中的起始位置。由于表Rn分块有序,分块有序,所以索引表所以索引表递增有序。递增有序。133920334244386080744986532212171322488624481 2 3 4 5 6 7
5、8 9 10 11 12 13 14 15 16 17 18 15首先查找索引表首先查找索引表ID ,以确定待查结点在哪一分块,以确定待查结点在哪一分块 (由于索引项按关键码字有序,可用顺序或折半查找由于索引项按关键码字有序,可用顺序或折半查找)然后,在已确定的那一块中进行顺序查找。然后,在已确定的那一块中进行顺序查找。数据结构定义:数据结构定义:长度为长度为 n 的查找表采用顺序表:的查找表采用顺序表: SSTable ST索引表的结构索引表的结构 typedef struct /* 索引表结点结构索引表结点结构 */ keytype key; int addr; IDtable; IDta
6、bel IDb; /* 索引表索引表 */16 分块查找由分块查找由索引表查找索引表查找和和子表查找子表查找两步完成,故两步完成,故整个算法的平均查找长度是两次查找的平均查找长整个算法的平均查找长度是两次查找的平均查找长度之和。度之和。 ASL=ASL索引表索引表+ASL子表子表 设查找表长为设查找表长为 n, 分为分为 b个子表个子表, 每块中均有每块中均有s = n/b 个元素个元素 若用若用二分查找二分查找来确定块,则分块查找的平均查找长度来确定块,则分块查找的平均查找长度约为:约为: 若用若用顺序查找顺序查找来确定块,则分块查找的平均查找长度来确定块,则分块查找的平均查找长度约为:约为
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 第八
