[发明专利]字符串数据检索方法、装置、计算机设备及存储介质有效
申请号: | 202010167413.4 | 申请日: | 2020-03-11 |
公开(公告)号: | CN111339382B | 公开(公告)日: | 2023-09-22 |
发明(设计)人: | 张斌;潘勇 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F16/903 | 分类号: | G06F16/903;G06F16/901 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 祝亚男 |
地址: | 518057 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 字符串 数据 检索 方法 装置 计算机 设备 存储 介质 | ||
1.一种字符串数据检索方法,其特征在于,所述方法包括:
接收检索请求,所述检索请求中请求从数据库中查询中间位置或者末尾位置包含有检索字符的字符串数据,所述检索字符是用户输入的字符;
从索引信息指示的各种字符组合中确定目标字符组合,所述索引信息用于指示前缀树中各个节点作为起始节点的子树所包含的字符组合;所述前缀树是基于所述数据库中包含的字符串数据构建的;所述目标字符组合包含n位字符,且所述目标字符组合与所述检索字符中的前n位字符相同;n为大于或者等于1的整数;
将所述目标字符组合对应的起始节点确定为目标起始节点;
从所述目标起始节点开始,在所述前缀树中对所述检索字符进行前缀匹配,得到目标子树,所述目标子树是对应的字符组合与所述检索字符相同的子树;其中,响应于所述目标起始节点包括m个节点,m为大于或者等于2的整数,获取所述m个节点各自在所述前缀树中的层级,所述层级用于指示对应的节点到根节点的距离;按照层级从低到高的顺序,依次从所述m个节点中的各个节点开始,在所述前缀树中对所述检索字符进行前缀匹配,得到所述目标子树;
从所述前缀树中获取所述目标子树的前缀字符和后缀字符;所述前缀字符是所述前缀树的根节点到所述目标子树的首个节点之间的各个节点对应的字符组合;所述后缀字符是所述目标子树之后的数据尾节点到所述目标子树的最后一个节点之间的各个节点对应的字符组合;所述数据尾节点是所述前缀树中,对应所述数据库中的字符串数据的最后一个字符的节点;
将所述前缀字符、所述检索字符以及所述后缀字符拼接,得到所述检索请求对应的目标字符串数据,所述检索字符位于所述目标字符串数据中的中间位置或者末尾位置。
2.根据权利要求1所述的方法,其特征在于,所述索引信息包括所述各种字符组合对应的起始节点的指针;
所述将所述目标字符组合对应的起始节点确定为目标起始节点,包括:
获取所述索引信息中包含的,所述目标字符组合对应的起始节点的指针;
将所述前缀树中,所述目标字符组合对应的起始节点的指针指向的节点确定为所述目标起始节点。
3.根据权利要求1所述的方法,其特征在于,所述从索引信息指示的各种字符组合中确定目标字符组合,包括:
将所述各种字符组合中,构成所述检索字符中的前缀部分的字符组合确定为候选字符组合;
将所述候选字符组合中字符位数最大的字符组合确定为所述目标字符组合。
4.根据权利要求1所述的方法,其特征在于,所述索引信息指示的各种字符组合包括双字符组合之外的各种字符组合。
5.根据权利要求1所述的方法,其特征在于,所述从所述前缀树中获取所述目标子树的前缀字符和后缀字符之前,还包括:
从所述目标子树的首个节点开始依次查询祖先节点,得到所述前缀树的根节点到所述目标子树的首个节点之间的各个节点。
6.根据权利要求5所述的方法,其特征在于,所述前缀树中的各个节点对应有各自的父节点指针,所述父节点指针用于指示对应节点的父节点;
所述从所述目标子树的首个节点开始依次查询祖先节点,得到所述前缀树的根节点到所述目标子树的首个节点之间的各个节点,包括:
根据所述目标子树的首个节点的父节点指针,从所述目标子树的首个节点开始依次向所述前缀树的根节点迭代查询父节点,得到所述前缀树的根节点到所述目标子树的首个节点之间的各个节点。
7.根据权利要求1所述的方法,其特征在于,所述从所述前缀树中获取所述目标子树的前缀字符和后缀字符之前,还包括:
获取所述前缀树中,位于所述目标子树之后的各个节点对应的尾节点标识,所述尾节点标识用于指示对应的节点是否为数据尾节点;
根据所述尾节点标识,确定位于所述目标子树之后的各个节点中的数据尾节点。
8.根据权利要求7所述的方法,其特征在于,所述尾节点标识是对应节点的字符编码中指定字符位中的数值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010167413.4/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置