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

单次和多次连续排列模体搜索

Single and multiple consecutive permutation motif search

Djamal Belazzougui, Adeline Pierrot, Mathieu Raffinot, Stéphane Vialette

摘要:

令$t$是$[n]$上的置换(其将扮演{ \em文本}的角色),并且模式$p$是$[n]$的$m$不同整数$m\leq n$的序列。模式$p$出现在$t$中的位置$i$当且仅当$p_1... p_m$与$t_i... t_{i+m-1}$序同构,也就是说,对于所有$1 \leq k< \ell \leq m$,$p_k>p_\ell$当且仅当$t_{i+k-1}>t_{i+\ell-1}$。在文本$t$中搜索模式$p$在于识别$t$中$p$的所有出现。我们首先提出了一个向前的自动机,它允许我们搜索$p$在$t$在$O(m^2\log \log m +n)$时间。然后,我们引入了一个Morris-Pratt自动机表示的前向自动机,使我们能够减少这种复杂性,以$O(m\log \log m +n)$的价格,一个额外的摊销常数项的整数的文本。两个自动机都占用了$O(m)$空间。然后,我们扩展的问题,搜索一组模式,并表现出一个特定的Aho-Corasick算法。接下来,我们提出了一个次线性平均情况下搜索算法运行在$O(\frac{m\log m}{\log\log m}+\frac{n\log m}{m\log\log m})$时间,我们最终证明是最佳的平均。

英文摘要:

Let $t$ be a permutation (that shall play the role of the {\em text}) on $[n]$ and a pattern $p$ be a sequence of $m$ distinct integer(s) of $[n]$, $m\leq n$. The pattern $p$ occurs in $t$ in position $i$ if and only if $p_1... p_m$ is order-isomorphic to $t_i... t_{i+m-1}$, that is, for all $1 \leq k< \ell \leq m$, $p_k>p_\ell$ if and only if $t_{i+k-1}>t_{i+\ell-1}$. Searching for a pattern $p$ in a text $t$ consists in identifying all occurrences of $p$ in $t$. We first present a forward automaton which allows us to search for $p$ in $t$ in $O(m^2\log \log m +n)$ time. We then introduce a Morris-Pratt automaton representation of the forward automaton which allows us to reduce this complexity to $O(m\log \log m +n)$ at the price of an additional amortized constant term by integer of the text. Both automata occupy $O(m)$ space. We then extend the problem to search for a set of patterns and exhibit a specific Aho-Corasick like algorithm. Next we present a sub-linear average case search algorithm running in $O(\frac{m\log m}{\log\log m}+\frac{n\log m}{m\log\log m})$ time, that we eventually prove to be optimal on average.

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

↑