[发明专利]一种基于树结构的语言库压缩方法和系统无效
申请号: | 201010164636.1 | 申请日: | 2010-04-15 |
公开(公告)号: | CN102222075A | 公开(公告)日: | 2011-10-19 |
发明(设计)人: | 李朝中 | 申请(专利权)人: | 李朝中 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 上海新天专利代理有限公司 31213 | 代理人: | 王敏杰 |
地址: | 加拿大艾尔伯塔省*** | 国省代码: | 加拿大;CA |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 结构 语言 压缩 方法 系统 | ||
技术领域
本发明涉及数据压缩方法和系统,特别是一种基于树结构的语言库压缩方法和系统。
背景技术
树结构在载体上的实现有赖于一般树与二叉树的等价转换和在存储器中按深度搜索存放树节点。前者被用来设定节点的数据结构而后者对该结构优化并使之走向实际应用。例如从词汇add,adding,added,adds组成的一般树转换为二叉树可得出节点的数据结构。从一般树(图1)到对应的二叉树(图2)可得节点的数据结构为:<KP><BP><EOW><L>。将该二叉树按深度搜索存放(图3),可优化节点数据结构为:<K><B><EOW><L>,省去了指针开销。但从某节点到其兄弟节点要越过该节点的所有子辈节点,比如从节点(i)到兄弟节点(e)要经过(i)所有子辈节点(n),(g)。当然也可以从词库直接生成二叉树。由于语言库树结构的深度与该库中最长的词汇有关而宽度与词库中词的总量有关,因此语言库树结构的特点是深度有限宽度很大。随着词汇量的加大更是如此。最后,在载体上引擎实现的方法是用一些数组或向量当作堆栈作为工作平台,从树的指定地点进入,按深度优先搜索扫描树节点,存入匹配的节点或指针信息入栈并找出满足指定条件的字或词汇。
定义:
<K>是子辈节点标志位,意为Kid;
<B>是兄弟节点标志位,意为Brother;
<EOW>是词标志位,意为End of Word;
<L>是字母,意为Letter;
<ST>是子树标志位,意为Sub Tree;
<pK>是子辈指针标志位;
<pB>是兄弟指针标志位;
[]表示该括号里的内容不出现或最多出现1次;
{}表示该括号里的内容不出现或出现多次;
<Pointer>={<1,×××××××>,}<0,×××××××>,是由1个或多个字节组成的指针定义。<0/1,×××××××>表示字节(Byte),×表示二进制位(bit)。其中当首位为1时表示后面的字节仍为该指针部分,直到最后一个字节首位为0时为止;所有的×组成了该指针值。
<KP>是子辈节点指针;<Pointer>结构。
<BP>是兄弟节点指针;<Pointer>结构。
现有的基于树结构的DAWG压缩法被Zi Corp应用在其文本输入法产品eZiText上。其节点数据结构是<K><B><EOW><L><pK>[<KP>]<pB>[<BP>]。其基本生成原理为从树的底层叶子节点或从叶子节点的父节点开始从左到右,从下到上逐步归约:寻找子树范例(first sub tree),然后将其后发现的同类去掉其所有节点并用指针指向该范例,从而达到数据库压缩的目的。
通过如下(表1)一组词汇举例说明有向无环图压缩法(DAWG)的压缩过程:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于李朝中,未经李朝中许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010164636.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:提取真菌多糖的方法
- 下一篇:一种治疗妇科急性宫颈炎的中药宫炎散