arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 1111.3244cs.DS
收藏

通过再压缩实现更快的完全压缩模式匹配

Faster fully compressed pattern matching by recompression

Artur Jeż

摘要:

本文研究了一个完全压缩的模式匹配问题。压缩由直线程序(SLP)表示,即一种上下文无关文法,只生成一个字符串;该术语完全意味着模式和文本都以压缩形式给出。使用最近开发的局部再压缩技术来处理这个问题:重构SLP,使得模式和文本的子串以相同的方式在两个SLP中编码。为此,SLP被本地解压缩,然后以统一的方式重新压缩。该技术产生用于压缩模式匹配的O((n+m)log M)算法,假设M适合O(1)机器字,其中n(m)是文本(模式)的压缩表示的大小,而M是解压缩模式的大小。如果只有m+n适合O(1)机器字,则运行时间增加到O((n+m)log M log(n+m))。算法复杂度为O(n^2m)。

英文摘要:

In this paper, a fully compressed pattern matching problem is studied. The compression is represented by straight-line programs (SLPs), i.e. a context-free grammars generating exactly one string; the term fully means that both the pattern and the text are given in the compressed form. The problem is approached using a recently developed technique of local recompression: the SLPs are refactored, so that substrings of the pattern and text are encoded in both SLPs in the same way. To this end, the SLPs are locally decompressed and then recompressed in a uniform way. This technique yields an O((n+m)log M) algorithm for compressed pattern matching, assuming that M fits in O(1) machine words, where n (m) is the size of the compressed representation of the text (pattern, respectively), while M is the size of the decompressed pattern. If only m+n fits in O(1) machine words, the running time increases to O((n+m)log M log(n+m)). The previous best algorithm due to Lifshits had O(n^2m) running time.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑