算法与数据结构查找.ppt

  1. 1、本文档共70页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

BUPTSCSTBUPT[2.再哈希法]Hi=RHi(key)i=1,2,...,k出现冲突时,采用多个hashing函数计算散列地址,直到找到空单元为止。如:H1(key)=keyMOD11H2(key)=(key+MOD9)+1H3(key)=……..…..H10(key)=……….第63页,共70页,5月,星期六,2024年,5月BUPTSCSTBUPT[3.链地址法]为每个哈希地址建立一个单链表,存储所有具有同义词的记录。100123456789∧∧∧∧∧∧∧∧∧K1K2K3∧K4K5K6∧同义链,同一散列地址。同义链,同一散列地址。冲突处理简单,无堆积现象,平均查找长度较短;较适合于事先无法确定表长的情况;可取??1,当结点信息规模较大时,节省空间删除结点的操作易于实现第64页,共70页,5月,星期六,2024年,5月BUPTSCSTBUPT[4.建立公共溢出区]将发生冲突的结点都存放在一个公共溢出区内。通常用于组织存在于外存设备上的数据文件。hash表(基本区)只存放一个记录。发生冲突的记录都存放在公共溢出区内。012345678910∧∧∧∧∧∧∧∧∧K1K2K3K4K5∧∧∧∧∧∧∧∧∧K2K3K5K6基本区(hash表)公共溢出区第65页,共70页,5月,星期六,2024年,5月BUPTSCSTBUPT[哈希表的查找及其分析]查找方法同hashing函数的产生办法。例:key=entotrefirefemsekssyvH(key)=2030481解决冲突方法:线性探测再散列012345678ASLs=(1+1+1+2+1+1+5)/7=12/7ASLf=(7+6+5+4+3+2+1+1+8)/9=37/9α=7/9entotrefirefemsekssyv第66页,共70页,5月,星期六,2024年,5月BUPTSCSTBUPT[平均查找长度与哈希表的装填因子的关系]在一般情况下,??,冲突的可能性?,ASL?,但空间的浪费?。成功ASL失败ASL线性探测再散列伪随机探测再散列链地址法第67页,共70页,5月,星期六,2024年,5月BUPTSCSTBUPT作业1.包括n个关键码的m阶B-树在一次检索中最多涉及多少个结点?(要求写出推导过程。)2.试从空树开始,画出按以下次序向3阶B-树中插入关键码的建树过程:20,30,50,52,60,68,70。如果此后删除50和68,画出每一步执行后B-树的状态。3.已知二叉树排序树中某结点指针p,其双亲结点指针为fp,p为fp的左孩子,试编写算法,删除p所指结点。typedefstructnode{intdata;structnode*left,*right;}BiTNode,*BSTree;voidDelete(BSTreeroot,p,fp)第68页,共70页,5月,星期六,2024年,5月BUPTSCSTBUPT4.试画出从空树开始,由字符序列(t,d,e,s,u,g,b,j,a,k,r,i)构成的二叉平衡树,并为每一次的平衡处理指明旋转类型。?5.已知含12个关键字的有序表及其相应权值为:123456789101112关键字ABCDEFGHIJKL权值46349326153

文档评论(0)

xiaoyao2022 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档