CN103365991B - 一种基于一维线性空间实现Trie树的词典存储管理方法 - Google Patents

一种基于一维线性空间实现Trie树的词典存储管理方法 Download PDF

Info

Publication number
CN103365991B
CN103365991B CN201310288785.2A CN201310288785A CN103365991B CN 103365991 B CN103365991 B CN 103365991B CN 201310288785 A CN201310288785 A CN 201310288785A CN 103365991 B CN103365991 B CN 103365991B
Authority
CN
China
Prior art keywords
node
current
key
trie tree
state
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310288785.2A
Other languages
English (en)
Other versions
CN103365991A (zh
Inventor
王国印
贾西贝
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Huaao Data Technology Co Ltd
Original Assignee
Shenzhen Huaao Data Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Huaao Data Technology Co Ltd filed Critical Shenzhen Huaao Data Technology Co Ltd
Priority to CN201310288785.2A priority Critical patent/CN103365991B/zh
Publication of CN103365991A publication Critical patent/CN103365991A/zh
Priority to PCT/CN2014/080176 priority patent/WO2015010508A1/zh
Application granted granted Critical
Publication of CN103365991B publication Critical patent/CN103365991B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9027Trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例提供一种基于一维线性空间实现Trie树的词典存储管理方法,该方法包括以下步骤:获取完整的词典数据;生成有序的词典数据并存放在一维数组中;创建Trie树实现对词典数据的存储。本发明采用一维数组代替双数组(base[]和check[]),本方法使得Trie树序列化和反序列化更加便捷,使得词典的加载存储更有效率,同时本发明可以解决双数组实现Trie树的词典数据存储方法中存在的数据移动或存储空间的回溯问题。

Description

一种基于一维线性空间实现Trie树的词典存储管理方法
技术领域
本发明涉及一种词典存储管理方法,尤其涉及一种基于一维线性空间实现Trie树的词典存储管理方法。
背景技术
在信息检索和自然语言处理领域,特别是基于词典的技术应用中,词典的规模一般都非常大,拥有成千上万甚至上亿条记录,尤其是搜索引擎中倒排索引词的规模最为庞大。对海量数据词典的存储,当前通常采用索引的数据结构来实现。常用的索引结构包括线性索引表、倒排表、散列(hash)表和搜索树等。当前网络上流行的Trie树的实现版本一般都是基于双数组的,两个数组的名字分别为base[]和check[],数组中的每一个元素下标i相当于Trie树的一个结点编号或在双数组中的存储位置,又称状态编号。
base[i]:存放的是当前状态i到所有后继状态最小无冲突的偏移量;
check[i]:存放的是当前状态i的直接前驱信息,即存储当前状态是由哪一个状态转移而来;
base和check是成对的;
base[i]和check[i]代表同一个状态的属性。
然而这种基于双数组实现的Trie树的词典数据存储方法存在着这样一个问题:会因为插入新状态而引起的冲突导致要移动大量存在冲突的词典数据,不仅会导致词典数据存储速率慢,也会导致数据移动或存储空间的回溯问题。
发明内容
为了解决上述技术的缺陷之一,本发明实施例提供一种基于一维线性空间实现Trie树的词典存储管理方法,本发明采用一维数组代替双数组(base[]和check[]),本方法使得Trie树序列化和反序列化更加便捷,使得词典的加载存储更有效率,同时本发明可以解决双数组实现Trie树的词典数据存储方法中存在的数据移动或存储空间的回溯问题。
为此,本发明实施例公开了一种基于一维线性空间实现Trie树的词典存储管理方法。该方法包括以下步骤:获取完整的词典数据;生成有序的词典数据并存放在一维数组中;创建Trie树实现对词典数据的存储。
在本发明实施例中,使用一维数组代替双数组(base[]和check[]),此种做法的好处使得Trie树序列化和反序列化更加简单,使得词典的加载更加容易。具体做法可以将base数组放在一维数组的偶数位,check数组放在奇数位,对应关系如下:
base[i]->>array[2*i];
check[i]->>array[2*i+1].
在本发明的一个实施例中,所述生成有序的词典数据包括:
将词典数据中所有词条和属性信息以Key为中心按词典顺序排序;
合并拥有相同Key值的values。
在本发明的一个实施例中,所述的key包括:
在每个key后面添加一个虚拟字符代表叶子结点(终端结点),每个叶子结点虚拟字符的存储位置由其直接前驱的base值确定。
本发明实施例中,允许让每个key带上自己的属性值values(词性或者其他标注信息)。当前很多Trie树的实现版本,只能存储key,无法将key和key的属性或解释信息(统称为values)直接关联起来。本方法的解决方式是在每个key后面加一个虚拟字符“$”代表叶子结点(终端结点),使得原先的终端结点变为非终端结点,在其后增加一个终端结点“$”作为其直接后继。把每个叶子结点“$”(终端结点)的base值赋上其所处的key按词典顺序序号的相反数-m(m为当前key在所有词条集中的词典顺序序号,m能直接确定相关key对应的values的存储位置),每个叶子结点“$”的存储位置,直接由其直接前驱的base值确定,同时叶子结点的直接前驱定义为自己,即叶子结点的check值等于其状态编号即逻辑存储位置。
在本发明的一个实施例中,所述词典顺序排序还包括:
拥有公共前缀的keys相邻。
在本发明的一个实施例中,所述状态的信息包括:
用一个数据机构Node存储每个状态的信息;
每个状态的信息包含:当前输入字符、状态的深度、第一个拥有当前状态key的编号、最后一个拥有当前状态key的下一个编号、拥有当前状态key的数量。
在本发明实施例中,在创建Trie树的过程中为了很好的避免因插入新状态导致冲突而引起的数据移动,要求所有信息按照key有序,才能够获取当前状态的所有直接后继状态的信息(如当前输入的字符c,该状态在Trie树的深度,直接后继状态包含的词条位置范围等)。为了方便,本发明定义一个数据结构Node存储每个状态的信息。
在本发明的一个实施例中,创建Trie树包括以下步骤:
定义起始状态,编号为0;
将起始状态放入双数组第0位置;
以起始状态为当前状态;
获取当前状态的所有直接后继状态的信息;
为当前结点寻找一个合适的base值,插入其所有直接后继结点。
本发明实施例提供的一种基于一维线性空间实现Trie树的词典存储管理方法能够使Trie树序列化和反序列化更加便捷,提高了词典的数据加载存储效率,同时本发明克服了双数组实现Trie树的词典数据存储方法中存在的数据移动或存储空间的回溯问题。
应当理解,以上总体说明和以下详细说明都是说明性和实例性的,旨在提供对所要求的本发明的进一步说明。
附图说明
图1是本发明实施例一种基于一维线性空间实现Trie树的词典存储管理方法的流程图。
图2是本发明实施例中词典数据前缀树组成的森林的构造图。
图3是本发明实施例中实现Trie树的词典存储的流程的示意图。
图4是本发明实施例中实现Trie树创建时结点的插入顺序流程的示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步的详细说明。应当理解,此处所描述的具体实施例仅仅用于解释本发明,并不用于限定本发明。
本发明实施例提供的一种基于一维线性空间实现Trie树的词典存储管理方法,该方法包括以下步骤:获取完整的词典数据;生成有序的词典数据并存放在一维数组中;创建Trie树实现对词典数据的存储。
如图1所示,是本发明实施例一种一维线性空间实现Trie树的词典存储管理方法的流程图,包括以下步骤:
步骤S110,获取完整的词典数据。
例如,词典中要存放如下表1中的这些词条(key)数据:
中国 深圳
中国人 深圳大学
南山 深圳市
南山区 深圳村
南山大道 龙山镇
南山社区 龙岗
南山街道 龙岗区
表1
步骤S120,生成有序的词典数据并存放在一维数组中。
将词典数据中所有词条和属性信息以Key为中心按词典顺序排序;合并拥有相同Key值的values。同时,让拥有公共前缀的keys相邻。根据上述获取的词典数据,那些词之间存在着一些共同的前缀,按照这些前缀树可以组成一个森林,如图2所示,各棵树的结点做如下说明:
虚线圆代表树的终端结点;
实线圆代表数的非终端结点;
从树的根部结点到当前终端结点构成的词是词典中的一条完整词条;
从树的根部结点到某一非终端结点构成的词是词典中某些词条的公共前缀。
由此可以看出在构造Trie树中,一定要存储当前状态的直接前驱信息。当前网络上流行的Trie树的实现版本一般都是基于双数组的,两个数组的名字分别为base[]和check[],数组中的每一个元素下标i相当于Trie树的一个结点编号或在双数组中的存储位置,又称状态编号。
base[i]:存放的是当前状态i到所有后继状态最小无冲突的偏移量。
check[i]:存放的是当前状态i的直接前驱信息,即存储当前状态是由哪一个状态转移而来
base和check是成对的,base[i]和check[i]代表同一个状态的属性
假如当前状态为s,输入的字符为c,下一状态为t,则查询过程的约束条件为:
check[base[s]+c]=s;
base[s]+c=t。
在本发明的一个实施例中,在每个key后面添加一个虚拟字符代表叶子结点(终端结点),每个叶子结点虚拟字符的存储位置由其直接前驱的base值确定。允许让每个key带上自己的属性值values(词性或者其他标注信息)。当前很多Trie树的实现版本,只能存储key,无法将key和key的属性或解释信息(统称为values)直接关联起来。本方法的解决方式是在每个key后面加一个虚拟字符“$”代表叶子结点(终端结点),使得原先的终端结点变为非终端结点,在其后增加一个终端结点“$”作为其直接后继。把每个叶子结点“$”(终端结点)的base值赋上其所处的key按词典顺序序号的相反数-m(m为当前key在所有词条集中的词典顺序序号,m能直接确定相关key对应的values的存储位置),每个叶子结点“$”的存储位置,直接由其直接前驱的base值确定,同时叶子结点的直接前驱定义为自己,即叶子结点的check值等于其状态编号即逻辑存储位置。
使用一维数组代替双数组(base[]和check[]),此种方法的好处使得Trie树序列化和反序列化更加简单,使得词典的加载更加容易。具体做法可以将base数组放在一维数组的偶数位,check数组放在奇数位,对应关系如下:
base[i]->>array[2*i];
check[i]->>array[2*i+1].
所述一维数组包括:一维数组的偶数位存放双数组的base值,一维数组的奇数位存放双数组的check值。
在创建Trie树的过程中为了很好的避免因插入新状态导致冲突而引起的数据移动,要求所有信息按照key有序,才能够获取当前状态的所有直接后继状态的信息(如当前输入的字符c,该状态在Trie树的深度,直接后继状态包含的词条位置范围等)。为了方便,本发明实施例定义一个数据结构Node存储每个状态的信息,该数据结构用于在创建Trie树时存储新插入的状态信息,主要存储的信息说明包括:
code存储的是当前的输入字符c,可以为c的Unicode值或者字节值,为了规避虚拟的终端结点“$”(终端结点的code为0),本方法定义每个code的值取字符c的Unicode值+1;
depth当前状态在Trie树中的深度+1,即其直接后继在Trie树的深度(Trie树的根结点即初始结点定义为第0层);
start第一个拥有当前状态key的编号;
end最后一个拥有当前状态key的下一个编号;
end-start为拥有当前状态key的数量,即这些key拥有共同的前缀。
步骤S130,创建Trie树实现对词典数据的存储。
如图3所示,是实现Trie树词典数据的存储流程,具体包括以下步骤:
步骤S131,将所有词条和属性信息以key为中心按词典顺序排序,合并拥有相同key值的values,要保证key不存在重复;
步骤S132,定义起始状态,编号为0,其包含的信息值为[code=0,depth=0,start=0,end=N],其中N为词典的规模,即key的数量;
步骤S133,将起始状态放入双数组第0位置,将其base[0]=1(array[2*0]=array[0]=1),并标识base为1的值已经被占用(保证所有状态的base值唯一),check[0]=0(array[2*0+1]=array[1]=0);
步骤S134,以起始状态作为当前状态;
步骤S135,获取当前状态的所有直接后继状态的信息,若直接后继结点列表为空,即当前结点为终端结点“$”,表示从起始结点到当前结点构成的key恰好是词典中的一个完整词条,将当前结点(终端结点)的base值赋上当前key词典顺序序号的相反数,该路径上执行完毕;否则执行步骤S136;
步骤S136,为当前结点寻找一个合适的base值,使得base值唯一,且不会导致所有直接后继结点与现有Trie树存储的结点冲突。依次将当前结点的直接后继结点插入Trie树中,并将其check值赋上当前结点的base值,再依次把当前结点的直接后继结点作为当前结点,跳转到步骤S135。
如图4所示,Trie树在插入新结点的顺序是依次插入当前结点的直接后继结点,然后依次把当前结点的直接后继结点作为当前结点,递归执行插入操作,若当前结点没有后继结点,即当前结点为终端结点“$”,跳出当前递归,直至所有结点插入完毕,即可完成Trie树的创建操作。若把所有的结点(包括终端结点“$”)按照插入的顺序编号。
本发明实施例提供一种基于一维线性空间实现Trie树的词典存储管理方法,该方法包括以下步骤:获取完整的词典数据;生成有序的词典数据并存放在一维数组中;创建Trie树实现对词典数据的存储。本发明采用一维数组代替双数组(base[]和check[]),本方法使得Trie树序列化和反序列化更加便捷,使得词典的加载存储更有效率,同时本发明可以解决双数组实现Trie树的词典数据存储方法中存在的数据移动或存储空间的回溯问题。

Claims (4)

1.一种基于一维线性空间实现Trie树的词典存储管理方法,其特征在于,该方法包括以下步骤:
获取完整的词典数据;
生成有序的词典数据并存放在一维数组中,所述一维数组包括:一维数组的偶数位存放双数组的base值,一维数组的奇数位存放双数组的check值;
创建Trie树实现对词典数据的存储,具体包括:
将所有词条和属性信息以key为中心按词典顺序排序,合并拥有相同key值的values,要保证key不存在重复;
定义起始状态,编号为0;
将起始状态放入双数组第0位置,将其base[0]=1,并标识base为1的值已经被占用,令check[0]=0;
以起始状态作为当前状态;
获取当前状态的所有直接后继状态的信息,若直接后继结点列表为空,表示从起始结点到当前结点构成的key恰好是词典中的一个完整词条,将当前结点的base值赋上当前key词典顺序序号的相反数,该路径上执行完毕,否则执行如下步骤;
为当前结点寻找一个base值,使得base值唯一,且不会导致所有直接后继结点与现有Trie树存储的结点冲突,依次将当前结点的直接后继结点插入Trie树中,并将其check值赋上当前结点的base值,再依次把当前结点的直接后继结点作为当前结点,跳转到上一步中;
Trie树在插入新结点的顺序是依次插入当前结点的直接后继结点,然后依次把当前结点的直接后继结点作为当前结点,递归执行插入操作,若当前结点没有后继结点,即当前结点为终端结点,跳出当前递归,直至所有结点插入完毕,即可完成Trie树的创建操作。
2.根据权利要求1所述的方法,其特征在于,所述词典顺序排序还包括:
拥有公共前缀的keys相邻。
3.根据权利要求1所述的方法,其特征在于,所述状态的信息包括:
用一个数据结构Node存储每个状态的信息;
每个状态的信息包含:当前输入字符、状态的深度、第一个拥有当前状态key的编号、最后一个拥有当前状态key的下一个编号、拥有当前状态key的数量。
4.根据权利要求1或权利要求3所述的方法,其特征在于,所述的key包括:
在每个key后面添加一个虚拟字符代表叶子结点(终端结点),每个叶子结点虚拟字符的存储位置由其直接前驱的base值确定。
CN201310288785.2A 2013-07-03 2013-07-03 一种基于一维线性空间实现Trie树的词典存储管理方法 Active CN103365991B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201310288785.2A CN103365991B (zh) 2013-07-03 2013-07-03 一种基于一维线性空间实现Trie树的词典存储管理方法
PCT/CN2014/080176 WO2015010508A1 (zh) 2013-07-03 2014-06-18 一种基于一维线性空间实现Trie树的词典存储管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310288785.2A CN103365991B (zh) 2013-07-03 2013-07-03 一种基于一维线性空间实现Trie树的词典存储管理方法

Publications (2)

Publication Number Publication Date
CN103365991A CN103365991A (zh) 2013-10-23
CN103365991B true CN103365991B (zh) 2017-03-08

Family

ID=49367332

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310288785.2A Active CN103365991B (zh) 2013-07-03 2013-07-03 一种基于一维线性空间实现Trie树的词典存储管理方法

Country Status (2)

Country Link
CN (1) CN103365991B (zh)
WO (1) WO2015010508A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103365991B (zh) * 2013-07-03 2017-03-08 深圳市华傲数据技术有限公司 一种基于一维线性空间实现Trie树的词典存储管理方法
CN107153647B (zh) * 2016-03-02 2021-12-07 北京字节跳动网络技术有限公司 进行数据压缩的方法、装置、系统和计算机程序产品
CN107239549A (zh) * 2017-06-07 2017-10-10 传神语联网网络科技股份有限公司 数据库术语检索的方法、装置及终端
CN110019682B (zh) * 2017-12-28 2022-12-27 北京京东尚科信息技术有限公司 用于处理信息的系统、方法和装置
CN108153907B (zh) * 2018-01-18 2021-01-22 中国计量大学 通过16位Trie树实现空间优化的词典存储管理方法
CN108399152B (zh) * 2018-02-06 2021-05-07 中国科学院信息工程研究所 数字查找树的压缩表示方法、系统、存储介质及规则匹配装置
CN109933656B (zh) * 2019-03-15 2023-08-15 深圳市赛为智能股份有限公司 舆情极性预测方法、装置、计算机设备及存储介质
CN111680489B (zh) * 2020-06-10 2021-11-19 腾讯科技(深圳)有限公司 目标文本的匹配方法和装置、存储介质及电子设备
CN112612427B (zh) * 2020-12-30 2022-11-25 北京优挂信息科技有限公司 一种车辆停靠点数据处理方法、装置、存储介质及终端

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1786962A (zh) * 2005-12-21 2006-06-14 中国科学院计算技术研究所 完美双数组trie树词典管理与检索方法
CN101499094A (zh) * 2009-03-10 2009-08-05 焦点科技股份有限公司 一种数据压缩存储并检索的方法及系统
CN101788990A (zh) * 2009-01-23 2010-07-28 北京金远见电脑技术有限公司 Trie树双数组的全局优化构造方法及系统
CN102651026A (zh) * 2012-04-01 2012-08-29 百度在线网络技术(北京)有限公司 通过预计算优化搜索引擎分词的方法及搜索引擎分词装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7096235B2 (en) * 2003-03-27 2006-08-22 Sand Technology Systems International, Inc. Computer implemented compact 0-complete tree dynamic storage structure and method of processing stored data
WO2005024659A1 (fr) * 2003-08-11 2005-03-17 France Telecom Dispositif de memoire trie a mecanisme de pipeline circulaire
CN101365131A (zh) * 2008-08-19 2009-02-11 华亚微电子(上海)有限公司 适于vlsi实现的avs视频解码器变长解码的简化码表及实施方法
JP5262864B2 (ja) * 2009-03-10 2013-08-14 富士通株式会社 記憶媒体、検索方法および検索装置
US8473501B2 (en) * 2009-08-25 2013-06-25 Ontochem Gmbh Methods, computer systems, software and storage media for handling many data elements for search and annotation
US10679218B2 (en) * 2010-05-28 2020-06-09 Securitymetrics, Inc. Systems and methods employing searches for known identifiers of sensitive information to identify sensitive information in data
CN103365991B (zh) * 2013-07-03 2017-03-08 深圳市华傲数据技术有限公司 一种基于一维线性空间实现Trie树的词典存储管理方法
CN103365992B (zh) * 2013-07-03 2017-02-15 深圳市华傲数据技术有限公司 一种基于一维线性空间实现Trie树的词典检索方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1786962A (zh) * 2005-12-21 2006-06-14 中国科学院计算技术研究所 完美双数组trie树词典管理与检索方法
CN101788990A (zh) * 2009-01-23 2010-07-28 北京金远见电脑技术有限公司 Trie树双数组的全局优化构造方法及系统
CN101499094A (zh) * 2009-03-10 2009-08-05 焦点科技股份有限公司 一种数据压缩存储并检索的方法及系统
CN102651026A (zh) * 2012-04-01 2012-08-29 百度在线网络技术(北京)有限公司 通过预计算优化搜索引擎分词的方法及搜索引擎分词装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
单数组全映射分词词典;魏进等;《计算机工程与应用》;20070811;第184-186页 *
基于双数组Trie树算法的字典改进和实现;戴耿毅等;《软件导刊》;20120730;第11卷(第7期);第17-19页 *

Also Published As

Publication number Publication date
CN103365991A (zh) 2013-10-23
WO2015010508A1 (zh) 2015-01-29

Similar Documents

Publication Publication Date Title
CN103365991B (zh) 一种基于一维线性空间实现Trie树的词典存储管理方法
CN103365992B (zh) 一种基于一维线性空间实现Trie树的词典检索方法
CN106599104B (zh) 一种基于redis集群的海量数据关联方法
CN111190904B (zh) 一种图-关系数据库混合存储的方法和装置
CN103123650B (zh) 一种基于整数映射的xml数据库全文索引方法
CN104915383B (zh) 一种通用数据库访问中自动适配对象的方法
CN103440311A (zh) 一种地名实体识别的方法及系统
CN106777163A (zh) 基于红黑树的ip地址所属地查询方法及系统
CN105260354A (zh) 一种基于关键词字典树构造的中文ac自动机工作方法
CN108197313B (zh) 通过16位Trie树实现空间优化的词典索引方法
CN103116625A (zh) 一种基于Hadoop的海量RDF数据分布式查询处理方法
CN105183788A (zh) 一种基于关键词字典树检索的中文ac自动机工作方法
CN112269786B (zh) 一种内存数据库kv存储引擎索引的创建方法
CN108509505B (zh) 一种基于分区双数组Trie的字符串检索方法及装置
CN104731922A (zh) 基于分布式数据库HBase的结构化数据的快速检索系统及方法
CN101286935A (zh) 一种基于ip地址范围的路由查找方法
CN101222391B (zh) 一种在服务器/客户端结构中构造拓扑树的方法
CN108153907B (zh) 通过16位Trie树实现空间优化的词典存储管理方法
CN112256821A (zh) 中文地址补全的方法、装置、设备及存储介质
CN101398830A (zh) 词库模糊查询方法及词库模糊查询系统
CN110020272A (zh) 缓存方法、装置以及计算机存储介质
KR100999408B1 (ko) 해시트리를 이용한 url 검색방법
CN109033193A (zh) 一种数据库结构及其数据同步方法
CN105025013A (zh) 基于优先级Trie树的动态IP匹配模型
Lin et al. A multi-index hybrid trie for lookup and updates

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent of invention or patent application
CB03 Change of inventor or designer information

Inventor after: Wang Guoyin

Inventor after: Jia Xibei

Inventor before: Wang Guoyin

COR Change of bibliographic data

Free format text: CORRECT: INVENTOR; FROM: WANG GUOYIN TO: WANG GUOYIN JIA XIBEI

C14 Grant of patent or utility model
GR01 Patent grant
CP02 Change in the address of a patent holder
CP02 Change in the address of a patent holder

Address after: 518057 2203/2204, Building 1, Huide Building, North Station Community, Minzhi Street, Longhua District, Shenzhen, Guangdong Province

Patentee after: SHENZHEN AUDAQUE DATA TECHNOLOGY Ltd.

Address before: 518057 Rooms 713, 715 and 716, 7/F, Software Building, No. 9, High-tech Middle Road, High-tech Zone, Nanshan District, Shenzhen, Guangdong Province

Patentee before: SHENZHEN AUDAQUE DATA TECHNOLOGY Ltd.