- 1、本文档共79页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
B-树遍历面临的问题 假设下图所示的这棵B树的每个结点都属于硬盘的不同页面,为了中序遍历所有的元素,就得遵循”页面2→页面1→页面3→页面1→页面4→页面1→页面5”这样的顺序,频繁地访问硬盘,导致效率很低.如何解决这个问题呢? * * 3 3 5 8 n K1 K2 K3 2 1 2 2 4 2 6 7 1 9 页面1 页面2 页面3 页面4 页面5 A0 A1 A2 A3 B+树 为了解决B-树面临的遍历等基本问题,在原有B树结构基础上加了新的元素组织方式,于是产生了B+树。 B+树是应文件系统所需而设计的一种B树的变形树,严格意义上已经不是我们数据结构课上定义的树了。 一棵B阶的B+树和m阶的B树的差异在于: 有n棵子树的结点中包含有n个关键字; 所有的叶子结点包含全部关键字的信息,及指向含这些关键字记录的指针,叶子结点本身依关键字的大小自小而大顺序链接; 所有分支结点可以看成是索引,结点中仅含有其子树种的最大(或最小)关键字。 注意:B+树的插入、删除过程与B树类似,只不过插入和删除操作都需要在叶子结点进行。 * * 3 5 8 1 2 3 4 5 6 7 8 9 9 内容提要 查找概论 静态查找表 动态查找表 哈希表 * * 散列表检索(一) 在已经介绍过的线性表、树等数据结构中,记录存储在结构中的相对位置是随机的,因而相应的检索是通过若干次的比较以寻找指定的记录。接下来将介绍一种新的存储结构——散列存储,它既是一种存储方式,又是一种常见的检索方法。 * * U S k1 k2 k3 k5 k4 0 H(k1) H(k5) H(k2)=H(k4) H(k3) H(km-1) 散列存储的基本思想是以关键码的值为自变量,通过一定的函数关系(称为散列函数,或称哈希(Hash)函数),计算出对应的函数值来,以这个值作为结点的存储地址,将结点存入计算得到的存储单元里去。按这个思想,采用散列技术将记录存储在一块连续的存储空间中,这块连续存储空间称为散列表或哈希表。关键字对应的记录存储位置称为散列地址。 散列表检索(二) 散列过程: 在存储时,通过散列函数计算记录的散列地址,并按此散列地址存储该记录。 当查找记录时,通过同样的散列函数计算记录的散列地址,按此散列地址访问该记录。 散列技术的特点 记录间不存在逻辑关系,只和关键字有关; 最适合求解查找与给定值相等的记录,不适合范围查找,或者那种同一个关键字对应很多记录的情况。 散列表实例:已知线性表的关键字集合为: S = {and, begin, do, end, for, go, if, then, until } 则可设哈希表为: char HT[26][8] 哈希函数H(key)的值,可取关键字key中第一个字母在字母表中的序号(0~25),即 H(key) = key[0]- ‘a’ * * 散列技术的冲突问题 散列存储中经常会出现对于两个不同关键字xi,xj,却有H(xi)=H(xj),即对于不同的关键字具有相同的存放地址,这种现象称为冲突或碰撞。碰撞的两个(或多个)关键字称为同义词(相对于函数H而言)。 “负载因子”?反映了散列表的装填程度,其定义为: 当?1时冲突是不可避免的。因此,散列存储必须考虑解决冲突的办法。 综上所述,对于Hash方法,需要研究下面两个主要问题: (1)选择一个计算简单,并且产生冲突的机会尽可能少 的Hash函数; (2)确定解决冲突的方法。 * * ?= 散列表中结点的数目 基本区域能容纳的结点数 U S k1 k2 k3 k5 k4 0 H(k1) H(k5) H(k2)=H(k4) H(k3) H(km-1) 散列函数的构造 * * 构造哈希函数时的几点要求: 哈希函数的定义域必须包括需要存储的全部关键字,如果哈希表允许有 m 个地址时, 其值域必须在 0 到 m-1 之间。 哈希函数计算出来的地址应能均匀分布在整个地址空间中:若 key 是从关键字集合中随机抽取的一个关键字,哈希函数应能以同等概率取 0 到 m-1 中的每一个值。 哈希函数应是简单的,能在较短的时间内计算出结果。 散列函数的构造方法(一) * * (1)除留余数法 选择一个适当的正整数P,用P去除关键字,取所得得余数作为散列地址,即: hash ( key ) = key % p p ? m 这个方法的关键是选取适当的P。选择P最好不要是偶数,也不要是基数的幂。一般地选P为小于或等于散列表长度m的某个最大质数比较好。例如 m = 8,16,32,64,128,256,512,1024 P = 7,13,31,61,127,251,503,1
您可能关注的文档
- 政府办公楼节能改造初步设计方案.ppt
- 政府投资项目管理解决方案.pptx
- 政府的宗旨和原则.ppt
- 政府招商引资手册范本.ppt
- 政府的职能管理与服务.ppt
- 政治必修一人教版储蓄与银行.ppt
- 政治必修矛盾是事物发展的源泉和动力.ppt
- 政治生活政府的责任课件.ppt
- 政治经济学原理商品与货币.ppt
- 政治:我国外交政策的宗旨维护世界和平促进共同发展.ppt
- 2025年新人教版英语三年级上册 Unit 4 Plants around usPart B 第5课时 Let's learn & Listen and chant 教学课件.pptx
- 2025年新人教版英语三年级上册 Unit 5 The colourful worldPart A 第3课时 Letters and sounds 教学课件.pptx
- 2025年新人教版英语三年级上册 Unit 5 The colourful worldPart B 第4课时 Let's talk & Draw and role-play 教学课件.pptx
- 2025年新人教版英语三年级上册课件 Unit 1 Part A 第3课时.pptx
- 2025年新人教版英语三年级上册 Unit 6 Useful numbersPart C 第7课时 Project 教学课件.pptx
- 2025年新人教版英语三年级上册课件 Unit 2 Different familiesPart B 第5课时 Let's learn & Listen and chant.pptx
- 2025年新人教版英语三年级上册 Unit3 B talk 教学课件.pptx
- 2025年新人教版英语三年级上册课件 U4 A learn.pptx
- 2025年新人教版英语三年级上册 Unit 4 Part B 第3课时 教学课件.pptx
- 2025年新人教版英语三年级上册 Unit 4 Plants around usPart A 第2课时 Let′s learn & Listen and chant 教学课件.pptx
最近下载
- 2024年张家界航空工业职业技术学院单招职业技能测试题库(含答案).docx VIP
- Part 5 Unit1Taking a Training Course 课件-中职高二英语(高教版拓展模块)(2023修订版).pptx
- Unit1 Meeting new people第2课时 Part A Let's learn&Listen and chant 课件(共45张PPT).pptx VIP
- mns低压开关柜操作程序.doc
- 中国儿童耐甲氧西林金黄色葡萄球菌感染现状及治疗进展.pdf
- 阴道炎症ppt课件.pptx
- 用于检测大肠杆菌F17菌毛黏附素基因的LAMP引物及其应用.pdf VIP
- 2024年危险化学品典型事故案例反思-程长进-2025.1.3.pptx
- 售电业务居间服务协议.docx
- 甲流感染防控要点培训课件.pdf
文档评论(0)