[发明专利]一种高效快速解决hash冲突的方法有效
| 申请号: | 201811617641.6 | 申请日: | 2018-12-28 |
| 公开(公告)号: | CN109800228B | 公开(公告)日: | 2023-03-10 |
| 发明(设计)人: | 杨一蛟;宋鹏飞 | 申请(专利权)人: | 深圳竹云科技有限公司 |
| 主分类号: | G06F16/22 | 分类号: | G06F16/22 |
| 代理公司: | 深圳快马专利商标事务所(普通合伙) 44362 | 代理人: | 赵亮;刘朗星 |
| 地址: | 518000 广东省深圳市南山区*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 高效 快速 解决 hash 冲突 方法 | ||
本发明涉及一种高效快速解决hash冲突的方法,一种高效快速解决hash冲突的方法,通过将布谷鸟散列思想与链地址法算法结合并引入LRU算法优化实现混合哈希表查找方法,可以优化hash表构造以及查找效率,同时提高hash table的利用率。将大大加速hash寻址key的索引进程。
技术领域
本发明涉及一种解决hash冲突的方法。,更具体地说,涉及一种高效快速解决hash冲突的方法。
背景技术
散列函数能使对一个数据序列的访问过程更加迅速有效,通过散列函数,数据元素将被更快地定位。但是散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来唯一的确定输入值,由此引出hash冲突。
解决hash冲突可以使用开放定址法。所谓的开放定址法就是一旦发生了冲突,就去寻找下一个空的散列地址,只要散列表足够大,空的散列地址总能找到,并将记录存入。这种方法总能找到空闲地址,但容易产生数据聚集现象,从而达不到记录的均匀分布;需要的存储空间大且利用不充分。
解决hash冲突还可以链地址法。链地址法就是一旦发生了冲突,将冲突的记录存入相应的链表中。链地址法处理冲突时无堆积现象,但是当链表元素逐渐累加变大时,性能会有所下降。
发明内容
本发明要解决的技术问题在于,针对现有技术中的缺陷,提供一种高效快速解决hash冲突的方法,优化hash冲突问题时处理的性能及存储空间问题。
本发明解决其技术问题所采用的技术方案是:构造一种高效快速解决hash冲突的方法,通过将布谷鸟散列思想与链地址法算法结合并引入LRU算法优化实现混合哈希表查找方法,优化hash表构造以及查找效率。
在本发明所述的高效快速解决hash冲突的方法中,所述高效快速解决hash冲突的方法步骤为:
S1.建立两个Hash表Table1和Table2组成布谷鸟散列表以及一个链地址哈希表Table3;同时创建三个Hash函数,hashA、hashB和hashC;
S2.获得key后根据函数hashA、hashB计算hashcode,检查建立两个表Table1、Table2所对应的地址是否为空,如果其中一个为空,则直接插入到空地址当中,同时添加键频次C(count)通过比较Table1和Table2对应地址频次,将出现概率大的分配在所需比较次数少的位置,以而提高查找效率;
S3.如果都不为空,则使用函数hashC插入到链地址哈希表Table3中,并为其添加键频次P(count);
S4.链地址表中的数据根据其P(count)的大小进行排序,将概率大的数据上浮至链地址表的表头;当链地址表中元素的概率大于布谷鸟散列表中元素的概率值时,链地址表中的元素将被移到布谷鸟散列表中,方便查找。
实施本发明的一种高效快速解决hash冲突的方法,具有以下有益效果:通过此发明可以优化hash表构造以及查找效率,同时提高hash table的利用率。将大大加速hash寻址key的索引进程。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明的高效快速解决hash冲突的方法流程图
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,所述高效快速解决hash冲突的方法步骤为:S1.建立两个Hash表Table1和Table2组成布谷鸟散列表以及一个链地址哈希表Table3;同时创建三个Hash函数,hashA、hashB和hashC;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳竹云科技有限公司,未经深圳竹云科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811617641.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:基于结构化设计的电网调度运行记录系统
- 下一篇:数据访问方法及相关设备





