[发明专利]基于内存的散列表的构建方法、文本查找方法及相应装置在审
申请号: | 201410856681.1 | 申请日: | 2014-12-31 |
公开(公告)号: | CN104572983A | 公开(公告)日: | 2015-04-29 |
发明(设计)人: | 肖冰 | 申请(专利权)人: | 北京锐安科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06F12/08 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 胡彬;路凯 |
地址: | 100044 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 内存 列表 构建 方法 文本 查找 相应 装置 | ||
1.一种基于内存的散列表的构建方法,其特征在于,包括:
获取用于查找的文本数据;
使用预设的主散列函数,计算所述文本数据对应的主散列值,并根据设定的映射算法确定所述主散列值对应的散列表入口地址;
使用预设的至少一个从散列函数,计算所述文本数据对应的从散列值,并基于所述从散列值得到目标散列值;
将所述目标散列值存储至内存中与所述散列表入口地址对应的单向链表,以构建散列表。
2.根据权利要求1所述的方法,其特征在于,使用预设的至少一个从散列函数,计算所述文本数据对应的从散列值,并基于所述从散列值得到目标散列值,包括:
分别使用预设的多个从散列函数中的各个从散列函数,计算所述文本数据对应的从散列值;
将计算得到的各个从散列值合并在一起,生成目标散列值。
3.根据权利要求1所述的方法,其特征在于,将所述目标散列值存储至内存中与所述散列表入口地址对应的单向链表,以构建散列表,包括:
判断内存中所述散列表入口地址处,是否存储有用于指向与所述散列表入口地址对应的单向链表的表头指针;
如果是,则在所述单向链表的队尾插入一个新节点,将所述目标散列值存储至所述新节点中的信息域;
如果否,则创建用于指向与所述散列表入口地址对应的单向链表的表头指针,存储至所述散列表入口地址处,并在所述内存中的所述表头指针指向的存储位置处,创建所述单向链表的第一个节点,将所述目标散列值存储至所述第一个节点中的信息域。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述主散列函数和所述从散列函数为BKDRHash函数、APHash函数、DJBHash函数、JSHash函数、RSHash函数、SDBMHash函数、PJWHash函数、ELFHash函数和DEKHash函数中两种不同的散列函数;
所述设定的映射算法为质数取余法、平方取中法或折叠法。
5.一种文本查找方法,其特征在于,包括:
获取本次待查找的文本数据;
使用预设的主散列函数,计算所述文本数据对应的主散列值,并根据设定的映射算法确定所述主散列值对应的散列表入口地址;
使用预设的至少一个从散列函数,计算所述文本数据对应的从散列值,并基于所述从散列值得到目标散列值;
遍历内存中构建的散列表中与所述散列表入口地址对应的单向链表,查找所述单向链表中是否存在信息域包含有所述目标散列值的节点。
6.一种基于内存的散列表的构建装置,其特征在于,包括:
文本数据获取单元,用于获取用于查找的文本数据;
散列表入口地址确定单元,用于使用预设的主散列函数,计算所述文本数据对应的主散列值,并根据设定的映射算法确定所述主散列值对应的散列表入口地址;
目标散列值生成单元,用于使用预设的至少一个从散列函数,计算所述文本数据对应的从散列值,并基于所述从散列值得到目标散列值;
目标散列值存储单元,用于将所述目标散列值存储至内存中与所述散列表入口地址对应的单向链表,以构建散列表。
7.根据权利要求6所述的装置,其特征在于,所述目标散列值生成单元,具体用于:
分别使用预设的多个从散列函数中的各个从散列函数,计算所述文本数据对应的从散列值;
将计算得到的各个从散列值合并在一起,生成目标散列值。
8.根据权利要求6所述的装置,其特征在于,所述目标散列值存储单元,具体用于:
判断内存中所述散列表入口地址处,是否存储有用于指向与所述散列表入口地址对应的单向链表的表头指针;
如果是,则在所述单向链表的队尾插入一个新节点,将所述目标散列值存储至所述新节点中的信息域;
如果否,则创建用于指向与所述散列表入口地址对应的单向链表的表头指针,存储至所述散列表入口地址处,并在所述内存中的所述表头指针指向的存储位置处,创建所述单向链表的第一个节点,将所述目标散列值存储至所述第一个节点中的信息域。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京锐安科技有限公司,未经北京锐安科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410856681.1/1.html,转载请声明来源钻瓜专利网。