- 5
- 0
- 约5.33万字
- 约 22页
- 2018-08-19 发布于湖北
- 举报
[汇编]hash函数的设计优化
Hash函数的设计优化
天津南开中学 李羽修
【摘要】
Hash是一种在信息学竞赛中经常用到的数据结构。一个好的Hash函数可以很大程度上提高程序的整体时间效率和空间效率。本文对面向各种不同标本(关键值)的Hash函数进行讨论,并对多种常用的Hash函数进行了分析和总结。
【关键字】
Hash 函数,字符串,整数,实数,排列组合
【正文】
对于一个Hash函数,评价其优劣的标准应为随机性,即对任意一组标本,进入Hash表每一个单元(cell)之概率的平均程度,因为这个概率越平均,数据在表中的分布就越平均,表的空间利用率就越高。由于在竞赛中,标本的性质是无法预知的,因此数学推理将受到很大限制。我们用实验的方法研究这个随机性。
一、整数的Hash函数
常用的方法有三种:直接取余法、乘积取整法、平方取中法。下面我们对这三种方法分别进行讨论。以下假定我们的关键字是,Hash表的容量是,Hash函数为。
1.直接取余法
我们用关键字除以,取余数作为在Hash表中的位置。函数表达式可以写成:
。
例如,表容量,关键值,那么。该方法的好处是实现容易且速度快,是很常用的一种方法。但是如果选择的不好而偏偏标本又很特殊,那么数据在Hash中很容易扎堆而影响效率。
对于的选择,在经验上,我们一般选择不太接近的一个素数;如果关键字的值域较小,我们一般在此值域1.1~1.6倍范围内选择。例如的值域为,那么
您可能关注的文档
- [九年级数学课件]人教版初三数学一次函数复习.ppt
- [教学]人力师三级各章节精要(针对第二版教材).doc
- [精华]天津大学高分子化学课件第一章.ppt
- 中国事业单位人事制度改革趋势分析(ppt 102) (人力资源 人事制度 薪资考勤 招聘面试).ppt
- 1986-2000年考研英语真题与答案.doc
- [设计]广州地铁人力资源管理hr建议书.doc
- [最新中考历史]重庆市江津区2012-2013学年度上期期末考试九年级历史试题.doc
- 20以内的退位减法复习整理ppt.ppt
- 27《父子骑驴》ppt课件2-西师大版三年级上册语文().ppt.ppt
- [指导]尼康d90使用指南.doc
- 统编版二年级语文上册课件《语文园地八》.pptx
- 眼部肌肤护理的日常习惯.pptx
- 第十单元 常见的酸、碱、盐 复习课(酸碱盐的化学性质)课件(内嵌视频)2025-2026学年九年级化学人教版下册.pptx
- 眼部肌肤护理的科学方法.pptx
- 2.4 磁铁能吸什么 课件(内嵌视频)2026-2027学年科学二年级上册苏教版.pptx
- 统编版二年级语文上册课件《阅读18 古诗二首》.pptx
- 科学二下4.12 寻访小动物的家 课件(苏教版2026新教材).pptx
- 煤矿企业各岗位安全生产风险告知.docx
- 第18课《井冈翠竹》课件-统编版语文七年级下册.pptx
- 第二章气体 液体和固体_气体液体固体单元复习课- 课件 -2026-2027学年高二下学期物理粤教版(2019)选择性必修第三册.pptx
最近下载
- 2026年度“三会一课”工作计划文稿供参考.docx VIP
- (一诊)2026年兰州市高三模拟考试英语试卷(含答案)+听力音频+听力原文.docx
- 07SD101-8建筑工程图集.docx VIP
- 2025年武汉生物制品研究所有限责任公司招聘7人笔试模拟试题及答案解析.docx VIP
- 2023-2024年中医全科学(副高)考试参考题库带答案解析.docx VIP
- 浙江理工大学科技与艺术学院《高等数学3下》2025——2026学年第一学期期末试卷(A卷).docx VIP
- 船员外包服务投标方案.docx
- 法院诉讼服务流程.pptx VIP
- 科技创新合作经营商铺合同模板.docx VIP
- 服务外包协议.docx VIP
原创力文档

文档评论(0)