码处理技术制造技术

技术编号:9599034 阅读:158 留言:0更新日期:2014-01-23 03:54
所公开的短语树的数据结构包括数据块作为所述短语树中的每个节点的数据,该数据块包括:第一区域,用于保存字符或字符串的码;第二区域,用于针对将要使用的每个字符,保存接着该字符或字符串下一个出现的第二字符的出现序号;以及第三区域,用于根据出现序号来保存出现次数,或者当出现次数超过阈值时,保存与包括该字符或字符串和该第二字符的字符串对应的码。

【技术实现步骤摘要】
码处理技术
本技术涉及编码技术。
技术介绍
在常规技术中,为了压缩输入字符串而生成短语树。短语树中的每个节点包括待被字符或字符串代替的码、待压缩的字符、表示层级的数据、指向父节点的指针、指向与可以被使用的每个字符对应的子节点中的每个子节点的指针、以及对与子节点中的每个子节点对应的字符出现的次数进行计数的计数器。例如,当输入字符串“ABABCABCABCCBCBCBCAAACBACBACBBCCBB”被输入时,生成例如如图1所示的短语树。为了生成新节点的出现次数的阈值是“2”。在此示例中,根节点被设置成第0级节点,而字符“0x00”至“0xFF”的节点被设置成第1级节点。作为第2级节,字符“0x42”和“0x41”的节点被设置成字符“0x41”的子节点,字符“0x43”的节点被设置成字符“0x42”的子节点,字符“0x42”的节点被设置成字符“0x43”的子节点。而且,作为第3级节点,字符“0x43”的节点被设置成字符“0x42”的子节点,并且字符“0x43”、“0x41”、“0x42”的节点被设置成字符“0x42”的子节点。针对每个节点,示意地示出了码(A)、字符(B)、子节点的字符的出现次数(C)和指向子节点的指针(D)。如图2所示,因为子节点指针的数量和用于子节点的字符的出现次数的计数器的数量等于256,256等于可以使用的字符的数量,所以3,085个字节被用作针对一个节点所使用的存储器容量。假设提供了作为可以用2个字节的码长度表示的最大数量节点的65536个节点,则总共大约192M字节被用作存储器容量。当用于代替字符串的码的类型的数量(换言之,节点的数量)变得较大时,短语树可以压缩各种数据。然而,当码的类型以此方式增加,则节点的数量也增加,并且因此短语树的整体大小变大。因此,作为一个方面,本技术的目的是提供一种用于减小用于表示短语树的数据结构的存储器容量的技术。
技术实现思路
本技术的第一方式中的短语树的数据结构包括数据块作为短语树中的每个节点的数据,该数据块包括:第一区域,该第一区域用于保存用于字符或字符串的码;第二区域,该第二区域用于针对将被使用的每个字符,保存接着该字符或字符串下一个出现的第二字符的出现序号;以及第三区域,该第三区域用于根据出现序号来保存出现次数,或者当出现次数超过阈值时,保存与包括该字符或字符串和第二字符的字符串对应的码。与本技术的第二方式相关的数据结构包括:与短语树对应的第一数据;针对与短语树中的每个节点对应的字符或字符串的第二数据;以及针对短语树的各层的第三数据。第一数据包括:针对短语树的每个节点将该节点的父节点的码或者该节点的子节点的码中的最大码关联到由该节点表示的字符的码并且关联到该节点所属的层的层标识符的关联数据,其中,关联数据被按照分配给该节点的码的顺序来排列。第二数据包括:针对短语树中的第二层和后续层中的每个层中的每个节点的,按照分配给该节点的码的顺序的与该节点对应的字符或字符串的码。第三数据包括:针对短语树中的第二层和后续层中的每个层的,属于该层的节点的数量、属于该层节点的码中的最小码、以及与该最小码对应的字符或字符串在第二数据中的位置相对第二数据的起始的偏移值。通过在权利要求中所特别指出的元素和组合的方式,将实现并获得实施方式的目的和优点。要理解的是,上述的概要描述和以下的详细描述二者都是示例性的和说明性的,而不是如所要求保护的那样对实施方式的限制。附图说明图1是示意性地描绘了表示常规示例中的短语树的数据结构的示例的图;图2是描绘了在该常规示例中的使用的存储量的示例的图;图3是描绘了与第一实施方式相关的短语树中的一个节点的数据结构的图;图4是描绘了用于扩展的计数器/子节点号的数组的示例的图;图5是与实施方式相关的信息处理设备的功能框图;图6是描绘了与实施方式相关的主处理流程的图;图7是描绘了用于生成短语树的处理的处理流程的图;图8是说明短语树的数据的生成处理的图;图9是说明短语树的数据的生成处理的图;图10是说明短语树的数据的生成处理的图;图11是说明短语树的数据的生成处理的图;图12是说明短语树的数据的生成处理的图;图13是说明短语树的数据的生成处理的图;图14是说明短语树的数据的生成处理的图;图15是说明短语树的数据的生成处理的图;图16是说明短语树的数据的生成处理的图;图17是说明短语树的数据的生成处理的图;图18是说明短语树的数据的生成处理的图;图19是说明短语树的数据的生成处理的图;图20A是说明短语树的数据的生成处理的图;图20B是说明短语树的数据的生成处理的图;图20C是说明短语树的数据的生成处理的图;图20D是说明短语树的数据的生成处理的图;图20E是说明短语树的数据的生成处理的图;图20F是说明短语树的数据的生成处理的图;图21是说明短语树的数据的生成处理的图;图22A是说明短语树的数据的生成处理的图;图22B是说明短语树的数据的生成处理的图;图23是说明短语树的数据的生成处理的图;图24A是说明短语树的数据的生成处理的图;图24B是说明短语树的数据的生成处理的图;图24C是说明短语树的数据的生成处理的图;图24D是说明短语树的数据的生成处理的图;图24E是说明短语树的数据的生成处理的图;图24F是说明短语树的数据的生成处理的图;图25是说明短语树的数据的生成处理的图;图26A是描绘用于获得数量的处理的处理流程的图;图26B是描绘数组设置处理的处理流程的图;图27是描绘用于设置当前节点的处理的处理流程的图;图28是描绘短语树的示例的图;图29是描绘整理之后的短语树的示例的图;图30是说明压缩映射的图;图31是说明生成压缩映射的图;图32是说明压缩映射生成处理的图;图33是说明压缩映射生成处理的图;图34是说明压缩映射生成处理的图;图35是说明压缩映射生成处理的图;图36是说明压缩映射生成处理的图;图37是说明压缩映射生成处理的图;图38是说明压缩映射生成处理的图;图39是说明压缩映射生成处理的图;图40是说明压缩映射生成处理的图;图41是说明压缩映射生成处理的图;图42是说明压缩映射生成处理的图;图43是说明压缩映射生成处理的图;图44是说明压缩映射生成处理的图;图45是说明压缩映射生成处理的图;图46是说明压缩映射生成处理的图;图47是说明压缩映射生成处理的图;图48是说明压缩映射生成处理的图;图49是说明压缩映射生成处理的图;图50是说明压缩映射生成处理的图;图51是说明压缩映射生成处理的图;图52是描绘条目添加处理的处理流程的图;图53是描绘压缩处理的处理流程的图;图54是描绘压缩映射的示例的图;图55是说明压缩处理的图;图56是描绘解压缩处理的处理流程的图;图57是说明解压缩处理的图;图58是说明当使用短语树的数据结构来压缩时的处理的图;图59是说明当使用短语树的数据结构来压缩时的处理的图;图60是说明当使用短语树的数据结构来压缩时的处理的图;图61是说明当使用短语树的数据结构来压缩时的处理的图;图62是说明当使用短语树的数据结构来解压缩时的处理的图;图63是说明当使用短语树的数据结构来解压缩时的处理的图;图64是说明当使用短语树的数据结构来解压缩时的处理的图;图65是说明当使用短语树的数据结构来解压缩时的处理的图;图本文档来自技高网
...
码处理技术

【技术保护点】
一种信息处理方法,包括:针对将要使用的每个字符,第一生成数据块,所述数据块包括:第一区域,所述第一区域用于保存字符或字符串的码;第二区域,所述第二区域用于针对将要使用的每个字符,保存接着所述字符或所述字符串下一个出现的第二字符的出现序号;以及第三区域,所述第三区域用于根据所述出现序号来保存出现次数,或者当所述出现次数超过阈值时,保存与包括所述字符或所述字符串和所述第二字符的字符串对应的码;当检测到:在输入字符串中包括的多个字符中的正在被处理的字符或字符串的数据块的第二区域中,保存了接着所述输入字符串中的所述正在被处理的字符或字符串的下一个字符的出现序号;在所述数据块的第三区域中,所述出现次数被保存成所述出现序号中的数据;以及增加之后的所述出现次数超过所述阈值时,存储与包括所述正在被处理的字符或字符串和所述下一个字符的第二字符串对应的码;以及生成所述第二字符串的数据块,所述第二字符串的所述数据块具有与在所述第一生成中所生成的所述数据块相同的结构。

【技术特征摘要】
2012.06.28 JP 2012-1452241.一种信息处理方法,包括:针对多个字符中的每个字符,通过第一生成来生成数据块,所述数据块包括:第一区域,所述第一区域用于保存特定字符或特定字符串的码;第二区域,所述第二区域用于针对所述多个字符中的每个字符,保存在输入字符串中接着所述特定字符或所述特定字符串下一个出现的第二字符的出现序号;以及第三区域,所述第三区域用于在所述第二字符的出现次数没有超过特定阈值的情况下,按照所述第二字符的出现序号的顺序来保存所述第二字符的出现次数,或者在所述出现次数超过所述特定阈值的情况下,保存针对包括所述特定字符或所述特定字符串和所述第二字符的某一字符串生成的码;当检测到:在所述输入字符串中正在被处理的字符或字符串的数据块的第二区域中,保存了在所述输入字符串中接着所述正在被处理的字符或字符串下一个出现的下一个字符的出现序号;在所述正在被处理的字符或字符串的数据块的第三区域中,所述出现次数被保存成所述出现序号中的数据;以及增加之后的所述出现次数超过所述特定阈值时,存储针对包括所述正在被处理的字符或字符串和所述下一个字符的第二字符串生成的码;以及生成所述第二字符串的数据块,所述第二字符串的所述数据块具有与在所述第一生成中所生成的所述数据块相同的结构。2.根据权利要求1所述的信息处理方法,还包括:当检测到:在所述正在被处理的字符或字符串的所述数据块的所述第二区域中,保存了所述下一个字符的所述出现序号;在所述正在被处理的字符或字符串的数据块的所述第三区域中,所述出现次数被保存成所述出现序号中的数据;以及所述增加之后的所述出现次数没有超过所述特定阈值时,将所述下一个字符设置成正在被处理的字符。3.根据权利要求2所述的信息处理方法,还包括:当检测到:在所述正在被处理的字符或字符串的数据块的所述第二区域中,保存了所述下一个字符的所述出现序号;以及在所述正在被处理的字符或字符串的数据块的所述第三区域中,针对所述第二字符串生成的所述码被保存成所述出现序号中的所述数据时,将所述第二字符串设置成正在被处理的字符串。4.根据权利要求1所述的信息处理方法,其中,所述第三区域的区域数量被限制到预定数量,并且所述数据块还包括第四区域,所述第四区域用于保存表示所述第三区域的扩展区域的数据。5.根据权利要求1所述的信息处理方法,还包括:根据针对所述输入字符串所生成的多个数据块来生成关联数据,从而针对由在特定状态中的所述多个数据块所表示的树结构的第二层和后续层中的数据块中的每个数据块,将所述数据块的父数据块的码关联到与针对所述数据块增加的字符对应的字符码,其中,所述特定状态是其中将所述多个数据块的所述第一区域和所述第三区域中所保存的第一码重新分配到基于与所述第一码对应的字符或字符串的顺序确定的第二码的状态。6.根据权利要求5所述的信息处理方法,其中,在所述关联数据中,还关联所述数据块的子数据块的码中的最大码。7.一种信息处理方法,包括:通过第一生成来生成数据块,针对多个字符中每个字符以及接着已经为其生成所述数据块的输入字符串中的字符或字符串出现了预定次数或更多次数的每个字符,所述数据块包括:第一区域,所述第一区域用于保存特定字符或特定字符串的码;第二区域,所述第二区域用于针对所述多个字符中的每个字符,保存在所述输入字符串中接着所述特定字符或所述特定字符串下一个出现的第二字符的出现序号;以及第三区域,所述第三区域用于在所述第二字符的出现次数没有超过特定阈值的情况下,按照所述第二字符的出现序号的顺序来保存所述第二字符的出现次数,或者在所述出现次数超过阈值的情况下,保存针对包括所述特定字符或所述特定字符串和所述第二字符的字符串生成的码;根据针对所述输入字符串所生成的多个数据块通过第二生成来生成:第一关联数据,所述第一关联数据将表示由在特定状态中的所述多个数据块所表示的树结构中的根的数据或者所述树结构中的第一层中的数据块中的每个数据块的子数据块的码中的最大码关联到所述树结构中的第一层中的数据块中的每个数据块的字符码并且关联到所述数据块的层编号;以及第二关联数据,所述第二关联数据针对所述树结构的第二层和后续层中的数据块中的每个数据块,将所述数据块的父数据块的码或者所述数据块的子数据块的码中的最大码关联到与针对所述数据块增...

【专利技术属性】
技术研发人员:二宫大介樋口真嘉小山丰西垣雅树松村量小野敏郎小泽崇记川井纯史
申请(专利权)人:富士通株式会社
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1