- 3
- 0
- 约4.85千字
- 约 27页
- 2019-01-08 发布于福建
- 举报
第八章走查找3
8.3 哈希表 查找操作要完成什么任务? 我们学过哪些查找技术?这些查找技术的共性? 顺序查找、折半查找、二叉排序树查找等。 以上讨论的查找方法,由于记录的存储位置与关键字之间不存在确定的关系,因此查找时需要进行一系列对关键字的查找比较,即“查找算法”是建立在比较的基础上的,查找效率由比较一次缩小的查找范围决定。 * * 湖南理工学院信息与通信工程学院 数据结构 * * 第八章 查找 线性表上的查找 二叉排序树 哈希表 待查值k 确定k在存储结构中的位置 能否不用比较,通过关键码直接确定存储位置? 依据关键字直接得到其对应的记录位置,即要求关键字与记录位置间存在一一对应关系,通过这个关系,能很快地由关键字得到对应的记录位置。 哈希函数(散列函数):在记录的关键字与记录的存储地址之间建立的一种对应关系。 哈希函数是从关键字空间到存储地址空间的一种映象。 哈希函数可写成:addr(ai)=H(ki) ai是表中的一个元素 addr(ai)是ai的存储地址 ki是ai的关键字 关键字 集合 存储地址 集合 hash 例 30个地区的各民族人口统计表 编号 地区别 总人口 汉族 回族…... 1 北京 2 上海 …... …... 以编号作关键字, 构造哈希函数:H(key)=key H(1)=1 H(2)=2 以地区别作关键字,取地区 名称第一个拼音字母的序号 作哈希函数:H(Beijing)=2 H(Shanghai)=19 H(Shenyang)=19 散列技术仅仅是一种查找技术吗? 散列既是一种查找技术,也是一种存储技术。 散列是一种完整的存储结构吗? 散列只是通过记录的关键码定位该记录,没有完整地表达记录之间的逻辑关系,所以,散列主要是面向查找的存储结构。 散列技术适合于哪种类型的查找? 散列技术一般不适用于允许多个记录有同样关键码的情况。散列方法也不适用于范围查找,换言之,在散列表中,我们不可能找到最大或最小关键码的记录,也不可能找到在某一范围内的记录。 ⑴ 散列函数的设计。如何设计一个简单、均匀、存储利用率 高的散列函数。 ① 所选函数尽可能简单,以便提高转换速度。 ② 所选函数对关键字计算出的地址,应在Hash地址集中大致均 匀分布,以尽量减少冲突。 ⑵ 冲突的处理。如何采取合适的处理冲突方法来解决冲 突。 ① Hash函数。若Hash函数选择得当,就可使Hash地址尽可能均 匀地分布在Hash地址空间上,从而减少冲突的发生;否则,若Hash 函数选择不当,就可能使Hash地址集中于某些区域,从而加大冲突 的发生。 ② 处理冲突的方法。选择适当的Hash函数可以减少冲突,但不能 避免冲突,因此当冲突发生时,必须有较好的处理冲突的方法。 ③ Hash表的装填因子。 散列技术的关键问题 哈希函数的构造 直接定址法 数据分析法 平方取中法 折叠法 除留取余法 1. 直接定址法 散列函数是关键码的线性函数,即: H(key) = a ? key + b (a,b为常数) 例如:有一个解放后出生人口调查表,每个记录包含年份、人数等 数据项,其中年分为关键字,则哈希函数可取为: H(key)=key +(-1948) 这样就可以方便地存储和查找1948年后任意一年的记录。 …… 人数 …… 1970 …… 1949 年份 …… 22 …… 01 地址 练习:关键码集合为{10, 30, 50, 70, 80, 90},选取的散列函数为H(key)=key/10,则散列表为: 0 1 2 3 4 5 6 7 8 9 10 30 50 70 80 90 特点: 直接定址法所得地址集合与关键字集合大小相等,不 会发生冲突。 实际中能用这种哈希函数的情况很少。 2. 数据分析法 根据关键码在各个位上的分布情况,选取分布比较均匀的若干位组成散列地址。 例 有80个记录,关键字为8位十进制数,哈希地址为2位十进制数。 8 1 3 4 6 5 3 2 8 1 3 7 2 2 4 2 8 1 3 8 7 4 2 2 8 1 3 0 1 3 6 7 8 1 3 2 2 8 1 7 8 1 3 3 8 9 6 7 8 1 3
您可能关注的文档
- 从细节说入手,描绘孩子们未来美好蓝图.ppt
- 创新大课堂2015高考好生物人教版一轮课件:2-7-20人类遗传病和生物育种.ppt
- 大肠癌发的护理2.pptx
- 大学有来机化学复习.ppt
- 大豆异黄酮对肥育猪生产性能、胴体品质发和肉质的影响郑春田.ppt
- 催化作时用原理.ppt
- 大学医学细胞生等物学线粒体.ppt
- 大学生网物化学复习资料.docx
- 大豆蛋白的提取与值含量测定.ppt
- 大地测量仪前器学2.ppt
- 25-26学年政治(部编版)选择性必修第二册课件:第1单元 周清1 民法中的人身权及财产权.pptx
- 25-26学年政治(部编版)选择性必修第二册课件:1.4.1 权利保障 于法有据.pptx
- 2025北京丰台区高二(上)期中地理(A卷)含答案.docx
- 2025北京三帆中学初三(上)开学考英语试题含答案.docx
- 2025北京一零一中初三9月月考语文试题含答案.docx
- 2025北京海淀区初三(上)期中道法试题含答案.docx
- 2025北京丰台区高一(上)期中政治(A卷)含答案.docx
- 25-26学年政治统编版必修4课件:3.3 唯物辩证法的实质与核心.pptx
- 25-26学年政治统编版必修4课件:7.2 正确认识中华传统文化.pptx
- 湖北省部分高中2026届高三上学期二模联考 历史试卷.docx
最近下载
- 数学物理方程讲解课后答案一二章--姜礼尚.pdf VIP
- 最新公路工程试验检测项目参数检验频率一览表资料.doc VIP
- 海南自贸港总体方案.pptx VIP
- 人教版小学语文一年级上册期末考试试题.pdf VIP
- 正步的行进与立定.doc
- 第3讲+走进新时代+课件《新时代中国特色社会主义思想学生读本(小学低年级)》.ppt VIP
- 2025-2026粤教粤科版(2024)科学二年级上册教学设计(附目录) .pdf
- 横纹肌溶解症--精品课件.ppt VIP
- 【9历一模】2025年安徽省蚌埠市五河县中考一模历史试题(含解析).pdf VIP
- 精品解析:2024-2025学年山东省济南市高新技术产业开发区人教版四年级上册期末考试数学试卷(原卷版).docx VIP
原创力文档

文档评论(0)