- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * * * * * * * * * * * 假设散列表的地址空间为0~m-1,使关键字K除以m所得的余数作为散列地址。 散列函数为: H(K)=K % m 该方法的关键是选取m。选取的m应使得散列函数值尽可能与关键字的各位相关。m最好为素数。 【例】有一组关键字4756693334547579, 哈希表的大小是43,则上述键的地址是:43=143=3243=1743=343=26 9.4 哈希表查找技术——构造哈希函数 2. 除余法 根据哈希表长将关键字分成尽可能分成若干段,然后将这几段的值相加,并将最高位的进位舍去,所得结果即为其哈希地址。相加时有两种方法,一种是顺折,即把每一段中的各位值对齐相加,称之为移位法;另一种是对折,像你折纸条一样,把原来关键字中的数字按照划分的中界向中间段折叠,然后求和,称之为折叠法。 【例】有一组关键字(4766934,5656975,4685637,3547807,7569664),将这些数 拆成2位、4位和1位数,然后再把它们相加,如图11.9所示: 图11.9用折叠移位法构造哈希函数示意图 9.4 哈希表查找技术——构造哈希函数 3. 折叠移位法 9.4 哈希表查找技术——解决哈希冲突方法 1. 开放地址法 用开放定址法解决冲突的做法是:当冲突发生时,按照某种方法探测表中的其他存储单元,直到找到空位置为止。开放地址法很多,本课主要介绍线性探测法。 将散列表T[0..m-1]看成是一个循环向量,若初始探查的地址为d(即h(key)=d),则最长的探查序列为:??? d,d+l,d+2,…,m-1,0,1,…,d-1???即:探查时从地址d开始,首先探查T[d],然后依次探查T[d+1],…,直到T[m-1], 此后又循环到T[0],T[1],…,直到探查到T[d-1]为止。 探查过程终止于三种情况: 若当前探查的单元为空,则表示查找失败(若是插入则将key写入其中); 若当前探查的单元中含有key,则查找成功,但对于插入意味着失败; 若探查到T[d-1]时仍未发现空单元也未找到key,则无论是查找还是插入均意味着失败(此时表满)。 哈希表查找技术——解决哈希冲突方法 2. 开放地址法之线性探测法 将散列表T[0..m-1]看成是一个循环向量,若初始探查的地址为d(即h(key)=d),则最长的探查序列为:??? d,d+l,d+2,…,m-1,0,1,…,d-1???即:探查时从地址d开始,首先探查T[d],然后依次探查T[d+1],…,直到T[m-1], 此后又循环到T[0],T[1],…,直到探查到T[d-1]为止。 探查过程终止于三种情况: 若当前探查的单元为空,则表示查找失败(若是插入则将key写入其中); 若当前探查的单元中含有key,则查找成功,但对于插入意味着失败; 若探查到T[d-1]时仍未发现空单元也未找到key,则无论是查找还是插入均意味着失败(此时表满)。 哈希表查找技术——解决哈希冲突方法 2. 开放地址法之线性探测法 三、处理冲突的方法: 例:散列函数H(K)=K%7,采用线性探测法将下列数据依次插入下表中: 23,34,56,12,8,14,35,25 0 1 2 3 4 7 5 8 6 9 23 1 34 1 56 1 12 1 8 1 14 4 35 5 25 4 假设查找每个元素的概率相同,则: 查找成功的平均查找长度(ASL)= 所有数据放置成功的次数/数据的个数 ASL=(1+1+1+4+5+1+1+4)/8=18/8 9.4 哈希表查找技术——解决哈希冲突方法 三、处理冲突的方法: 用此法来构造散列表会产生非同义词对同一地址的争夺,称之为堆积。 0 1 2 3 4 7 5 8 6 9 23 1 34 1 56 1 12 1 8 1 14 4 35 5 25 4 哈希表查找技术——解决哈希冲突方法 9.4 哈希表查找技术——解决哈希冲突方法 2. 链表法 链表法解决冲突的做法是:将所有关键字为同义词的结点链接在同一个单链表中。若选定的哈希表长度为m,则可将哈希表定义为一个由m个头指针组成的指针数组T[0..m-1]。凡是散列地址为i的结点,均插入到以T[i]为头指针的单链表中。T中各分量的初值均应为空指针。在链表法中,装填因子α可以大于1,但一般均取α≤1。 散
您可能关注的文档
- 急诊危重病情判断和评分.PDF
- 性别承认跨部门工作小组.PDF
- 性生活满意度中国人的自我评价及其影响因素.pdf
- 恒生信用咭客户体检优惠.PDF
- 恩他卡朋双多巴片说明书.PDF
- 恩平市人民医院儿科医疗设备项目.PDF
- 恩平市人民医院高档实时四维.PDF
- 恩平市大槐镇中心卫生院.PDF
- 妇幼保健院医院信息化建设项目招标文件.pdf
- 惠能的心之本体论思想及其心理学理论价值.PDF
- ABB REX640 保护和控制继电器 适用于高级发电和配电应用的一体化保护装置 数据表(中文).pdf
- honeywell霍尼韦尔SmartLine® 电子远传变送器产品文档.pdf
- Fujifilm 富士胶片 ApeosWare Management Suite 2 GM1216C2-6 说明书.pdf
- Panasonic松下HBC软件YA-2KPMV1F01说明书用户手册.pdf
- Colorlight卡莱特AI智能媒体中心AX6K 产品规格书 V1.0说明书用户手册.pdf
- ABB Prerequisite SOP for ServiceNow Discovery BAU 操作说明(英语).pdf
- YJ扬杰SiC MOSFET模块 MC14HFZ12C1N规格说明书.pdf
- YJ扬杰IGBT模块 MG40P12E2A规格说明书.pdf
- YJ扬杰IGBT单管 DGB20N65CTL1K规格说明书.pdf
- ApeosWare 管理套件 系统要求 Management Suite 2 入门指南.pdf
最近下载
- 软件质量保障体系构建.docx
- [八部经典中医学著作].06金匮要略.doc VIP
- 实践总结:东芝电梯CV180、190、330故障代码.doc VIP
- 第五单元第11课《刀言纸语》教学课件-2025-2026学年苏少版(2024)初中美术八年级上册.pptx VIP
- 2024-2025学年北京东城区八年级初二(上)期末物理试卷(含答案).pdf
- 八(上)古诗文赏析(含答案).doc VIP
- 中华人民共和国仲裁法(2025修订版)测试题及答案.docx VIP
- 高速公路桥梁T梁预制架设施工方案.doc VIP
- 济南酒店复盘总结2012.3.15.ppt VIP
- 第十五课《锦上添花》课件-+2025-2026学年赣美版(2024)初中美术七年级上册.pptx VIP
原创力文档


文档评论(0)