[发明专利]一种快速分词的实现方法无效

专利信息
申请号: 200910107961.1 申请日: 2009-06-16
公开(公告)号: CN101576877A 公开(公告)日: 2009-11-11
发明(设计)人: 程治永 申请(专利权)人: 程治永
主分类号: G06F17/27 分类号: G06F17/27;G06F17/28;G06F17/30
代理公司: 暂无信息 代理人: 暂无信息
地址: 518059广东省深圳*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 快速 分词 实现 方法
【权利要求书】:

1.本发明是这样实现的:一种快速分词的实现方法,其特征在于,该方法包括以下步骤:

基于词条查找树的快速分词方法,词条查找树由一级索引表和HASH多叉树构成。一级索引表是数组,通过下标直接访问,可快速缩小搜索范围,时间复杂度为常数。HASH多叉树是基于HASH的多叉树,即每个节点的子节点列表通过HASH散列,查找的时候平均时间复杂度为常数。通过词条添加操作构建词条查找树,利用词条查找树进行快速分词。

2.如权利要求1所述HASH多叉树其特征在于:

HASH多叉树和一级索引表相连,以进一步加快词条查找树的搜索速度。

HASH多叉树中的节点为字符节点,字符节点至少包含:字符值,词条结束标志,子节点数,子节点列表,HASH冲突的下一个兄弟节点等信息。子节点列表是通过HASH散列的列表。

HASH桶的大小由子节点数确定,并在增加子节点时自动扩展,并根据新HASH桶大小重新构造节点。动态增长的HASH桶可以减少HASH冲突,同时保证匹配效率和资源利用率。通过子节点数获得最佳HASH桶的大小,可事先构造对应表,以加快计算速度。

根据HASH值获得HASH位置的操作,用与操作替换取模操作可以加快运算速度,即HASH值和一个特定值进行与运算来获得HASH索引,该特定值和HASH桶大小相关,可以取小于HASH桶大小且BIT位连续为1的最大值,可事先构造好对应表,以加快计算速度。HASH冲突的节点相连,以链表的形式组织,并将首节点记录在对应的HASH索引位置。

添加字符节点到子节点列表中的过程。首先根据新的子节点数目计算是否需要扩展当前节点,如果需要扩展则申请新的空间重新构造新节点,并回收旧节点。将字符的值作为HASH值,根据HASH桶的大小获得HASH索引位置,并加入到该索引位置的链表中。

3.如权利要求1所述一级索引表其特征在于:

前导字符是首先取出并处理的字符,可快速缩小搜索范围。前导字符和一级索引表密切相关,前导字符的数目等于一级索引表的维数。前导字符至少可以为1个,对应的一级索引表的记录数为256(1×256)。如果最小词条字节数均不小于2则前导字符可以为2个,对应的一级索引表的记录数为65536(256×256)。256是字符值的个数(0-255)。

4.如权利要求1所述添加词条操作其特征在于:

步骤1.从被添加词条中取出前导字符,在一级索引表中进行匹配。若记录不存在,为前导字符构造字符节点,并将该节点加入到一级索引表中,并记录为当前节点;若记录存在,则直接记为当前节点。

步骤2.取出被添加词条的下一个字符,在当前节点的子节点列表中进行匹配。如果不存在,则为该字符构造一个字符节点,并添加到当前节点的子节点列表中,并记录新添加节点为当前节点;如果存在则直接设置为当前节点。重复步骤2的过程,直到被添加词条所有字符被加入。

步骤3.在最末节点上设置词条结束标志。

5.如权利要求4所述词条添加操作其特征在于:

添加字符节点到当前节点的子节点列表的过程,是添加元素到HASH多叉树的过程。通过该字符的值作为HASH值,计算其在HASH桶中的索引位置,该索引位置已有节点以链表的形式组织。将该节点作为首节点加入到该链表中,并记录在HASH桶的对应索引位置。

若添加过程中需要扩展当前节点,则申请一块新空间,并构造新的当前节点,并将旧节点进行回收。判断是否需要扩展的依据是HASH桶大小是否无法容下新的子节点数。

6.如权利要求1所述分词操作其特征在于:

步骤1.取出输入文本的前导字符,在一级索引表中进行匹配,若存在则取出匹配字符节点,并设置为当前节点,检测当前节点是否有词条结束标志,如果有词条结束标志则输出一个匹配词条。

步骤2.取出输入文本的下一个字符,在当前节点的子节点列表中进行匹配,若存在则取出存在匹配字符节点,并设置为当前节点,检测当前节点是否有词条结束标志,如果有词条结束标志则输出一个匹配词条。重复步骤2进行后续字符匹配,直到输入文本匹配完毕或者无法匹配后续字符,输出所有带有词条结束标志的节点对应的词条组合。

7.如权利要求4所述添加词条操作和权利要求6所述分词操作其特征在于:

前向匹配和后向匹配的操作分别需要建立对应的一级索引表和HASH多叉树。进行添加词条操作、分词操作时,若是前向匹配则从前往后逐一提取输入字符,若是后向匹配则从后往前逐一提取字符,进行同样的算法匹配。

进一步的说,如果匹配操作不区分英文字母大小写,则将字符统一到大写或者小写即可。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于程治永,未经程治永许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/200910107961.1/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top