Tying up the loose ends in fully LZW-compressed pattern matching
我们考虑经典模式匹配问题的自然推广:给定模式p[1]的压缩表示,M]和文本t[1. N]的大小分别为m和n,p是否出现在t中?我们开发了一个最佳的线性时间解决方案的情况下,p和t都使用LZW方法压缩。这改善了以前已知的O((n+m)log(n +m))时间解决方案的Gasieniec和Rytter,并基本上关闭线的研究致力于研究LZW压缩的精确模式匹配。
2011-09-19 cs.DS
Cross-Document Pattern Matching
我们研究了一个新的变种的字符串匹配问题称为跨文档字符串匹配,这是一个问题的索引的文档集合,以支持一个有效的搜索模式在选定的文档,其中模式本身是另一个文件的子串。这个问题的几个变种被认为是,和高效的线性空间的解决方案,提出了查询时间的界限,要么不依赖于在所有的模式大小或依赖于它在一个非常有限的方式(双对数)。作为一个副作用,我们提出了一个改进的解决方案,加权水平的祖先问题。
2012-02-18 cs.DS
A Fast String Matching Algorithm Based on Lowlight Characters in the Pattern
提出了一种新的字符串匹配算法,该算法不从模式的左端或右端进行匹配,而是从一个特定的位置进行匹配。与Knuth-Morris-Pratt算法和Boyer-Moore算法相比,新算法在选择比较起始位置时更加灵活。该选项确实节省了成本。
2014-01-28 cs.DS
Cartesian Tree Matching and Indexing
我们引入了一个新的匹配度量,称为笛卡尔树匹配,这意味着如果两个字符串具有相同的笛卡尔树,则它们匹配。在笛卡尔树匹配的基础上,我们定义了一个长度为n的文本和一个长度为m的模式的单模式匹配,以及一个长度为n的文本和k个总长度为m的模式的多模式匹配。对于单模式匹配,我们给出了一个O(n+m)时间的算法;对于多个模式匹配,我们给出了一个O((n+m)log k)确定时间或O(n+m)随机时间的算法。我们还定义了一种称为笛卡尔后缀树的索引数据结构,并给出了一个O(n)的随机时间算法来建立笛卡尔后缀树。我们的笛卡尔树匹配的高效算法使用笛卡尔树的表示,称为父距离表示。
2019-05-22 cs.DS
New Variants of Pattern Matching with Constants and Variables
给定一个文本和一个模式,在两种类型的符号上,称为常量和变量,参数化模式匹配问题是通过用文本中的一个变量替换模式中的每个变量来找到模式匹配的文本的子串的所有出现,其中替换应该是单射的。函数匹配问题是它的一个变体,它解除了注入约束。在本文中,我们将讨论这些问题的变体,其中可以用一个常数或一个变量来代替模式的每个变量。我们给出了两种算法,基于卷积的方法和扩展的基于KMP的方法,并分析了它们的复杂性。
2017-05-26 cs.DS
Compressed Pattern-Matching with Ranked Variables in Zimin Words
自敏词是一种非常特殊的限定词,它与模式可避性问题密切相关。这个问题在于测试是否一个给定的模式与变量的实例出现在几乎所有的话在任何有限的字母表。这个问题还没有得到很好的理解,没有多项式时间算法是已知的,它的NP-难也是未知的。模式可避免性问题等价于在一个自敏词中搜索一个模式(带有变量)。主要的困难是潜在的指数大小的自敏词。我们使用的特殊属性的字,特别是他们是高度可压缩的,设计有效的算法的特殊版本的模式匹配,这里称为排名匹配。在压缩环境下给出了Zimin算法的一种新的解释。我们讨论了结构的变量和压缩表示的变量值的排名。此外,对于排名匹配,我们提出了有效的算法来找到最短的实例和模式的实例的估值的数量。
2013-07-05 cs.DS
Duel and sweep algorithm for order-preserving pattern matching
给定文本$T$和字母表$Σ$上的模式$P$,经典的精确匹配问题搜索文本$T$中模式$P$的所有出现。与精确匹配问题不同,保序模式匹配(OPPM)考虑的是元素的相对顺序,而不是它们的真实值。在本文中,我们提出了一个有效的算法OPPM问题使用的“双扫描”范式。我们的算法运行在$O(n + m\log m)$时间一般和$O(n + m)$时间的假设下,字符串中的字符可以排序在线性时间的字符串大小。我们还进行了实验,并表明我们的算法是基于KMP的算法更快。最后,我们介绍了二维保序模式匹配,并给出了一种双扫描算法,该算法在双阶段运行于$O(n^2)$时间内,在扫描时间运行于$O(n^2 m)$时间内,并带有$O(m^3)$预处理时间。
2017-05-26 cs.DS
Pattern Matching in Multiple Streams
我们研究了多个数据流中的确定性模式匹配问题。在这个模型中,一个符号一次到达,并与s个流文本之一相关联。每个时间步的任务是报告长度为m的固定模式和新更新的流之间是否存在新的匹配。与流媒体环境中的常见情况一样,目标是使用尽可能少的空间,同时仍然快速报告匹配。对于三个不同的模式匹配问题,我们给出了几乎匹配的上、下空间界。对于精确匹配,我们表明,这个问题可以解决在恒定的时间每个到达符号和O(m+s)字的空间。对于k-失配和k-差问题,我们给出了O(k)时间的解决方案,需要O(m+ks)字的空间。在所有这三种情况下,我们也给空间下界表明我们的方法是最佳的一个对数因子。最后,我们提出了一些开放的问题,这个新的模式匹配模型。
2012-04-25 cs.DS
Multiple pattern matching revisited
我们考虑经典的多字符串精确匹配问题。我们的解决方案是基于$q$ -gram结合模式叠加,位并行和字母大小的减少。我们讨论了如何实现最佳组合的各种替代方案的利弊。我们的方法与Salmela等人的先前工作密切相关,2006年)。实验结果表明,我们的方法表现良好,不同的字母大小,他们规模大的模式集。
2014-05-22 cs.DS
Order-preserving pattern matching with k mismatches
我们研究了最近引入的保序模式匹配的推广,而不是寻找一个精确的副本的模式,我们只需要元素之间的相对顺序是相同的。在我们的变体中,我们还允许模式和文本之间最多有k个不匹配,目标是为小k值构建一个有效的算法。对于长度为m的模式和长度为n的文本,我们的算法在O(n(loglogm + kloglogk))的时间内检测到一个顺序保持出现k个不匹配。
2014-03-05 cs.DS
Efficient Algorithms for the Order Preserving Pattern Matching Problem
给定一个长度为m的模式x和一个长度为n的文本y,两者都在一个有序的字母表上,保序模式匹配问题在于找到文本的所有子串,这些子串具有与模式相同的相对顺序。它是近年来受到关注的著名的精确模式匹配问题的近似变体。这个有趣的问题在很多领域都有应用,如时间序列分析,如股票市场的股票价格,天气数据分析或音乐旋律匹配。在本文中,我们提出了两个新的过滤方法,在实践中比以前提出的方法更有效。从我们的实验结果来看,我们提出的解决方案比以前的解决方案快2倍,减少了高达99%的误报率。
2015-01-16 cs.DS
A Simple Streaming Bit-parallel Algorithm for Swap Pattern Matching
交换的模式匹配问题是在允许模式交换相邻符号的同时找到文本中出现的所有模式。我们的目标是设计快速匹配算法,利用按位机器指令的位并行性,只有流访问的输入。我们引入了一种新的方法来解决这个问题的图论模型的基础上,并比较其性能,以前已知的算法。我们还表明,使用确定性有限自动机的方法不能实现类似的高效算法。此外,我们描述了一个致命的缺陷,在一些以前发表的算法基于同一模型。最后,我们提供了我们的算法在真实世界的数据的实验评估。
2018-09-25 cs.DS
Designing optimal- and fast-on-average pattern matching algorithms
给定模式$w$和文本$t$,关于$w$的$t$上的模式匹配算法的速度是$t$的长度与为了将$w$搜索到$t$中而执行的文本访问的数量的比率。首先,我们提出了一个通用的方法来计算的极限的模式匹配算法,关于$w$,在iid文本的预期速度。接下来,我们将展示如何确定最大的速度,可以实现一个大类的算法,连同运行此速度的算法。由于这一决定的复杂性使得它不可能处理模式的长度大于4,我们提出了多项式启发式。最后,我们的方法进行了比较与9个预先存在的模式匹配算法从理论和实践的角度来看,即无论是在IID文本的限制预期速度,并在实际数据上观察到的平均速度。在所有情况下,预先存在的算法都优于。
2016-11-25 cs.DS
Fast Set Intersection and Two Patterns Matching
在本文中,我们提出了一个新的问题,快速集合相交问题,这是预处理集合,以有效地报告集合中的任何两个集合的交集。此外,我们提出了新的解决方案的二维子串索引问题和文件列表问题的两个模式减少到快速集相交问题。
2010-03-11 cs.DS
Indexes for Jumbled Pattern Matching in Strings, Trees and Graphs
我们考虑如何索引字符串,树和图的混乱模式匹配时,我们被要求返回一个匹配,如果存在。例如,我们展示了如何给定一棵包含两种颜色的树,我们可以构建一个二次空间索引,通过它我们可以在时间上找到与匹配大小成比例的匹配。我们还展示了如果我们满足于近似匹配,我们只需要线性空间。
2013-04-19 cs.DS
Optimal trade-offs for pattern matching with $k$ mismatches
给定长度为$m$的模式和长度为$n$的文本,$k$失配模式匹配的目标是为文本的每个$m$子串计算到模式的精确汉明距离,或者报告它超过$k$。这可以在Amir等人[J. Algorithms 2004]所示的$\widetilde{O}(n \sqrt{k})$时间或Clifford等人[SODA 2016]的结果导致的$\widetilde{O}((m + k^2) \cdot n/m)$时间中求解。我们提供了一个平滑的时间权衡这两个界限,通过设计一个算法的工作时间$\widetilde{O}( (m + k \sqrt{m}) \cdot n/m)$。我们补充这一匹配的条件下界,表明一个显着更快的组合算法是不可能的,除非组合矩阵乘法猜想失败。
2017-04-05 cs.DS
A family of fast exact pattern matching algorithms
描述了一类基于比较的精确模式匹配算法。它们利用多维数组,以便在搜索周期的每次迭代中处理多个相邻的文本窗口。这种方法以空间为代价降低了平均时间复杂度。这一系列的算法表现良好的短模式和中等大小的字母。在这种情况下,窗口的几个模式的长度一次移动是很有可能的,这是算法成功的主要因素。我们的算法优于Boyer-Moore-Horspool算法,无论是在原始版本中还是在星期天的快速搜索修改中,在一个宽的图案长度-字母表大小的平面区域中。在某些子区域,所提出的算法是所有已知的精确模式匹配算法中最快的。也就是说,当字母大小为约30-40并且模式长度为约4-10时,它们表现最好。这样的参数对于在自然语言文本数据库中的搜索是典型的。
2016-08-30 cs.DS
On the Practical Power of Automata in Pattern Matching
经典的模式匹配范例是寻找一个字符串(模式)在另一个字符串(文本)中的出现,其中两个字符串都是从字母表集$Σ$中提取的。假设文本长度为$n$,模式长度为$m$,这个问题可以简单地在时间上解决$O(nm)$。在克努特、莫里斯和普拉特1977年的开创性论文中,开发了一种自动机,它允许对任何字母表及时解决这个问题$O(n)$。这个自动机,我们称之为{ \em KMP-自动机},已经证明在解决许多其他问题时是有用的。一个值得注意的例子是{ \em参数化模式匹配}模型。在此模型中,在匹配中允许对来自$Σ$的符号进行一致的重命名。参数化匹配范例已被证明在软件工程、计算机视觉和其他应用中的问题中是有用的。长期以来,人们一直怀疑,对于符号是均匀随机的文本,朴素算法将执行KMP算法。在本文中,我们研究的实际效率KMP算法与天真的算法上随机生成的文本。我们分析了各种参数下的时间,如字母表的大小,模式的长度,和模式出现在文本中的分布。我们这样做的原始精确匹配问题和参数化匹配。虽然这些发现证明了民间智慧对于精确匹配的情况是正确的,但令人惊讶的是,KMP算法在参数化匹配情况下的工作速度明显快于朴素算法。我们在DNA文本中检验了这一假设,并观察到与随机文本相似的行为。我们还展示了一个非常结构化的情况下,自动机是更有效的。
2022-07-17 cs.DS
On string matching with k mismatches
在本文中,我们考虑几个变种的模式匹配问题。特别地,我们研究了以下问题:1)具有k个失配的模式匹配; 2)失配的近似计数;以及3)具有失配的模式匹配。使用的距离度量是汉明距离。我们提出了一些新的算法和技术来解决这些问题。提供了确定性算法和随机算法。这些问题的变体,其中可能有通配符的文本或模式或两者都被认为是。这些算法的实验评估。源代码可在http://www.engr.uconn.edu/~man09004/kmis.zip上获得。
2013-07-04 cs.DS
Quantum jumbled pattern matching
设$S_1, S_2 \in Σ^*$字符串,如果它们是彼此的排列,我们称之为$S_1$ { \em jumble match} $S_2$。给定一个大小为$N$的文本$T$和一个字符串$S \in Σ^*$,\emph{Jumbled Pattern Matching}(JPM)的问题是确定$T$中的所有子字符串是否与$S$相匹配。在经典计算中,一个普遍的猜测是JPM需要$Ω(N^{2-ε})$预处理时间和空间用于$O(1)$查询时间,或者在线版本中的$Ω(N^{1-δ})$查询时间,使用$ε, δ>0$。本文提出了一种在$O(\sqrt{N})$时间上求解在线联合概率模型的量子算法。
2022-03-01 cs.DS
Order preserving pattern matching on trees and DAGs
保序模式匹配(OPPM)问题是,给定一个模式串$p$和一个文本串$t$,找出$t$中与$p$具有相同相对顺序的所有子串.在本文中,我们考虑两个变种的OPPM问题,一组文本字符串作为一棵树或DAG。我们表明,OPPM问题的长度$m$和文本树$T$的大小$N$的单一模式$p$可以解决在$O(m+N)$时间,如果字符的$p$是从一个整数字母的多项式大小。如果模式$p$在一般有序字母表上,则时间复杂度变为$O(m \log m + N)$。然后,我们表明,OPPM问题的一个单一的模式和文本DAG是NP完全的。
2017-07-25 cs.DS
Fast Circular Pattern Matching
精确循环模式匹配(ECPM)问题包括报告文本$T$中模式$P$的每次旋转。在许多现实世界的应用中,特别是在计算生物学中,圆旋转是感兴趣的,因为它们在病毒DNA中的突出性。因此,在没有预处理时间限制的情况下,所有这些圆形旋转发生的速度对许多研究领域都很有意义。我们强调,尽我们所知,一种新的方法来解决ECPM问题,并提出了四个数据结构,伴随着这种方法,每个都有自己的时间-空间权衡,除了实验结果,以确定最计算可行的数据结构。
2022-04-20 cs.DS
Efficient Parameterized Pattern Matching in Sublinear Space
本文针对参数化模式匹配问题,分析参数化字符串的周期性,将 Galil-Seiferas 精确匹配算法推广至参数化匹配,实现亚线性额外空间的高效算法。
2023-06-19 cs.DS
Space Lower Bounds for Online Pattern Matching
我们提出了在线模式匹配的空间下界下的一些不同的距离措施。给定一个长度为m的模式和一个每次到达一个字符的文本,在线模式匹配问题是在新字符到达时立即报告模式和文本的滑动窗口之间的距离。我们要求在每个位置上以恒定的概率给出正确的答案。我们给出了L_1、L_2、L_ \infty、Hamming、编辑和交换距离以及计算互相关/卷积的任何算法的Omega(m)比特空间下界。然后,我们展示了距离函数之间的二分法,具有通配符般的属性和那些没有。在前一种情况下,其中包括,作为一个例子,模式匹配与字符类,我们给欧米茄(m)位空间下界。对于其他距离函数,我们证明了存在Omega(log m)和O(log^2 m)位的空间界。最后,我们讨论了非二进制输入的空间下界,并展示了如何在某些情况下,他们可以得到改善。
2011-06-22 cs.DS
Fuzzy Pattern Matching in Ordered Structures
American University of Armenia(亚美尼亚美国大学)
本文针对模糊模式匹配问题,提出泛化KMP算法前缀函数概念的轨迹,构建统一框架,分别解决序列与偏序结构中的模糊模式匹配问题。
2026-09-02 cs.DS
Optimal-Hash Exact String Matching Algorithms
字符串匹配是在文本中找到所有出现的模式的问题。我们提出了改进的版本的快速系列的字符串匹配算法的基础上哈希$q$ -gram。该改进包括考虑最小值$q$,使得模式的每个$q$ -gram具有唯一的散列值。新算法是最快的比算法的HASH家庭的短模式大尺寸的字母。
2023-03-10 cs.DS
The Complexity of Approximate Pattern Matching on De Bruijn Graphs
将序列与标记图中的行走对齐是计算生物学中一个非常重要的问题。为了在具有$|E|$边的任意图中找到与长度$m$的模式精确匹配的行走,基于强指数时间假设(SETH)的下限意味着明显快于$O(|E|m)$时间的算法是不可能的[Equi等人,ICALP 2019]。然而,对于许多特殊的图,例如de Bruijn图,该问题可以在线性时间内解决[Bowe等人,WABI 2012年]。对于近似匹配,图片更复杂。当只允许对模式进行编辑(替换、插入和删除)时,或者当图是非循环的时,问题也可以在$O(|E|m)$时间内解决。当允许对任意循环图进行编辑时,即使在二进制字母表上,问题也变成NP完全[Jain等人,RECOMB 2019]。即使编辑仅限于替换,这些结果也保持不变。de Bruijn图上的近似模式匹配的复杂性仍然是开放的。我们调查这个问题,并表明,使德Bruijn图服从高效的精确模式匹配的属性不扩展到近似匹配,即使仅限于替换的情况下,字母表大小为4。我们证明了,当允许对de Bruijn图进行替换时,判定图中匹配行走的存在性是NP-完全的。此外,我们证明了一个算法显着快于$O(|E|m)$是不可能的de Bruijn图的情况下,只允许替换的模式。这与模式到文本匹配相反,在模式到文本匹配中,精确匹配在线性时间内可解,如de Bruijn图,但替换下的近似匹配在次二次$O(n\sqrt{m})$时…
2022-01-28 cs.DS
Parallel algorithm for pattern matching problems under substring consistent equivalence relations
给定一个文本和一个字母表上的模式,模式匹配问题搜索该模式在文本中的所有出现。等价关系$\approx$称为子串一致等价关系(SCER),如果对于两个字符串$X$和$Y$,$X \approx Y$意味着所有$1 \le i \le j \le |X|$的$|X| = |Y|$和$X[i:j] \approx Y[i:j]$。在本文中,我们提出了一个有效的并行算法的模式匹配下的任何SCER使用“双扫描”的范例。对于长度为$m$的模式和长度为$n$的文本,我们的算法在$O(ξ_m^\mathrm{t} \log^2 m)$时间和$O(ξ_m^\mathrm{w} \cdot n \log^2 m)$工作中运行,在优先并发读并发写并行随机存取机(P-CRCW PRAM)上进行$O(τ_n^\mathrm{t} + ξ_m^\mathrm{t} \log^2 m)$时间和$O(τ_n^\mathrm{w} + ξ_m^\mathrm{w} \cdot m \log^2 m)$工作预处理。
2022-07-27 cs.DS
Faster fully compressed pattern matching by recompression
本文研究了一个完全压缩的模式匹配问题。压缩由直线程序(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)。
2013-06-25 cs.DS
Motif matching using gapped patterns
我们提出了新的算法的问题的多个字符串匹配的缺口模式,其中一个缺口模式是一个序列的字符串,使每两个连续的字符串之间有一个固定长度的差距。这个问题有应用在发现转录因子结合位点的DNA序列时,使用广义版本的位置权重矩阵模型来描述转录因子的特异性。在这些模型中,一个主题可以匹配为一组具有单位长度关键字的空白模式。现有的算法,用于匹配一组间隙模式是最坏情况下有效的,但不实用,反之亦然,在这种特定的情况下。我们提出的新算法是基于动态规划和位并行,并在现有的算法中间地带。事实上,它们的时间复杂度接近现有的最佳界,但它们也是实用的。实验结果表明,本文提出的算法在实际应用中速度较快,而且在所有字符串都是单位长度的情况下效果更好。
2014-07-07 cs.DS
On pattern matching with k mismatches and few don't cares
我们考虑了具有$k$不匹配的模式匹配问题,其中模式中可能存在无关字符或通配符。具体来说,给定长度为$m$的模式$P$和长度为$n$的文本$T$,我们希望找到$T$中所有不超过$k$的$P$。模式可以有无关字符,它匹配任何字符。如果没有无关紧要,用于具有$k$不匹配的模式匹配的最知名算法具有$O(n\sqrt{k \log k})$的运行时间。在模式中使用“无关”时,最好的确定性算法的运行时间为$O(nk polylog m)$。因此,有和没有不关心的版本之间有一个重要的差距。在本文中,我们给出了一个算法,其运行时间增加的不关心的数量。我们将{ \em island}定义为$P$的最大长度子串,该子串不包含无关字。令$q$为$P$中岛的数量。我们提出了一个算法,运行在$O(n\sqrt{k\log m}+n\min\{\sqrt[3]{qk\log^2 m},\sqrt{q\log m}\})$时间。如果岛$q$的数量为$O(k)$,则该运行时变为$O(n\sqrt{k\log m})$,其基本上匹配具有$k$不匹配的模式匹配的最佳已知运行时,而不关心。如果岛$q$的数量是$O(k^2)$,则该算法渐进地快于先前的用于具有$k$不匹配且模式中不关心的模式匹配的最佳算法。
2016-10-28 cs.DS
Position Heaps for Cartesian-tree Matching on Strings and Tries
Cartesian树模式匹配是最近引入的模式匹配方案,其检测具有与查询模式相似的结构的连续数据流中的片段。形式上,笛卡尔树模式匹配寻找文本串$S$的所有子串$S'$,使得$S'$的笛卡尔树与查询模式$P$的笛卡尔树一致。在本文中,我们提出了一个新的索引结构,这个问题称为笛卡尔树位置堆(CPH)。令$n$为输入文本字符串$S$的长度,$m$为查询模式$P$的长度,$σ$为字母表大小。我们发现,CPH的$S$,表示$\mathsf{CPH}(S)$,支持模式匹配查询在$O(m (σ+ \log (\min\{h, m\})) + occ)$时间与$O(n)$空间,其中$h$是高度的CPH和$occ$是模式出现的次数。我们展示了如何在$O(n)$工作空间的$O(n \log σ)$时间内构建$\mathsf{CPH}(S)$。此外,我们将问题扩展到文本是标记树(即Trie)的情况。给定一个trie $T$与$N$节点,我们表明,CPH的$T$,表示$\mathsf{CPH}(T)$,支持模式匹配查询的trie在$O(m (σ^2 + \log (\min\{h, m\})) + occ)$时间与$O(N σ)$空间。我们还展示了一个运行在$O(N σ)$时间和$O(N σ)$工作空间中的$\mathsf{CPH}(T)$的构造算法。
2021-08-14 cs.DS
Linear pattern matching on sparse suffix trees
将多个字符打包到一个计算机字中是压缩字符串表示并加速其处理的一种简单而自然的方法。利用这个想法,我们提出了一个压缩字符串的索引,基于{ \em稀疏后缀树} \cite{KU-96}适当定义的后缀链接。假设,在标准的单位成本RAM模型下,一个字最多可以存储$\log_σn$字符($σ$是字母表大小),我们的索引占用$O(n/\log_σn)$空间,即与压缩字符串本身相同的空间。所得到的模式匹配算法在时间$O(m+r^2+r\cdot occ)$中运行,其中$m$是模式的长度,$r$是存储在字中的字符的实际数目,而$occ$是模式出现的数目。
2011-03-14 cs.DS
On the Average-case Complexity of Pattern Matching with Wildcards
使用通配符的模式匹配是找到长度为$n$的文本$t$的与长度为$m$的模式$x$匹配的所有因子的问题,其中可能存在通配符(匹配所有内容的字符)。在本文中,我们提出了一些快速的平均情况下的模式匹配的通配符被限制在模式或文本的算法,然而,结果很容易适应的情况下,通配符都是允许的。我们分析了这些算法的\textit{average-case}复杂度,并给出了第一个非平凡时间界。这些是第一个结果的平均情况下的复杂性模式匹配与通配符,作为一个产品,提供了第一个可证明的分离之间的复杂性精确模式匹配和模式匹配与通配符在字RAM模型。
2016-01-14 cs.CC cs.DS
Quantum pattern matching Oracle construction
我们提出了几种用于量子模式匹配的预言机构造方法。我们反过来表明,可以使用的Grover的搜索算法的精确和部分模式匹配,确定性的构造之一。另一个也指向匹配的索引,但主要提供了一种以概率方式生成要搜索的模式与输入字符串中所有可能的子串之间的汉明距离的方法。
2020-05-06 cs.DS quant-ph
Linear Approximate Pattern Matching Algorithm
模式匹配是几乎所有科学领域的基本过程。这个问题涉及到在一个参考数据流(通常是很长的)中找到一个给定模式(通常是很短的)的位置。匹配可以是精确的或近似的(不精确的)。精确匹配是在不允许模式中的一个或多个字符的不匹配(或插入和删除)的情况下搜索模式,而近似匹配则相反。为了精确匹配,可以在线性时间和空间中构建的几种数据结构被使用,并且现在在实践中。对于近似匹配,为解决该匹配而提出的解决方案是非线性的并且目前是不切实际的。在本文中,我们设计并实现了一个结构,可以内置的线性时间和空间($O(n)$),并解决了近似匹配问题的$O(m + \frac {log_2n {(log_Σn)} ^{k+1}}{k!} + occ)$搜索成本,其中$m$是模式的长度,$n$是引用的长度,和$k$是容忍的不匹配(和插入和删除)的数量。
2022-06-30 cs.DB cs.DS
Matching Patterns with Variables Under Simon's Congruence
该文研究 Simon 同余下带变量的模式匹配问题,并系统刻画其计算复杂性。
2023-08-16 cs.DS cs.FL
Efficient Pattern Matching on Binary Strings
二进制字符串匹配问题在于找到文本中所有出现的模式,其中两个字符串都建立在二进制字母表上。这是计算机科学中一个有趣的问题,因为二进制数据在电信和计算机网络应用中无处不在。此外,该问题也在图像处理领域和压缩文本的模式匹配中找到应用。最近,它已被证明,经典的精确字符串匹配算法的适应不是很有效的二进制数据。在本文中,我们提出了两个有效的算法的问题,适应完全避免任何参考位允许处理模式和文本字节的字节。实验结果表明,新算法在大多数情况下优于现有的解决方案。
2008-10-15 cs.DS cs.IR
Optimizations and extensions for fair join pattern matching
本研究优化并扩展了公平连接模式匹配算法,提升了性能并增强了基准测试的可扩展性,展示了连接模式在微服务架构中的应用。
2025-12-04 cs.DS cs.PL
Kernelization lower bound for Permutation Pattern Matching
如果置换$π$包含长度为$|σ|$的子序列,其元素的相对顺序与置换$σ$中的元素的相对顺序相同,则置换$π$包含置换$σ$作为模式。这个概念在枚举组合学中起着重要的作用。我们证明了这个问题没有一个多项式内核(广泛认为的复杂性假设$\mbox{NP} \not\subseteq \mbox{co-NP}/\mbox{poly}$下),通过引入一个新的多项式减少从集团问题置换模式匹配。
2015-01-11 cs.CC cs.DS
Exact Analysis of Pattern Matching Algorithms with Probabilistic Arithmetic Automata
我们提出了一个基于窗口的模式匹配算法的精确概率分析框架,如Boyer-Moore,Horspool,Backward DAWG Matching,Backward Oracle Matching等。特别是,我们展示了如何有效地获得这样的算法的运行时间成本的分布,为任何给定的模式,在随机文本模型,这可以是相当普遍的,从简单的统一模型,高阶马尔可夫模型或隐马尔可夫模型(HALGORY)。此外,我们提供了一种技术来计算\emph{differences}的运行时间成本的两个算法的确切分布。与以前的工作相比,我们的方法既不限于简单的文本模型,也不渐近报表,也不矩计算,如期望和方差。在方法上,我们使用有限自动机的扩展,我们称之为确定性算术自动机(DAA)和概率算术自动机(PAA)[13]。据我们所知,这是第一次,子串或后缀为基础的模式匹配算法进行了准确的分析。在实验中,我们比较Horspool的算法,向后DAWG匹配,和向后Oracle匹配的原型模式的长度短,并提供统计数据的最小DAA的大小为这些计算。
2010-09-30 cs.DS cs.FL
Matching Patterns with Variables
模式p(即,一串变量和终端)匹配一个词w,如果w可以通过用终端词均匀地替换p的变量来获得。相应的匹配问题,即,决定给定模式是否匹配给定单词通常是NP完全的,但对于具有限制结构的模式类可以在多项式时间内求解。在本文中,我们概述了一系列最近的结果与变量模式的有效匹配,以及一系列的扩展这个问题。
2019-07-29 cs.CC cs.DS cs.FL
Quantum pattern matching fast on average
$d$ -维模式匹配问题是在长度为$n \times \dots \times n$的文本中使用$n \ge m$查找长度为$m \times \dots \times m$的模式的出现。该任务对文本和图像处理以及其他应用领域中的各种问题进行建模。本文描述了一种量子算法,它解决了随机模式和文本在时间上的模式匹配问题$\widetilde{O}((n/m)^{d/2} 2^{O(d^{3/2}\sqrt{\log m})})$。对于大的$m$,这是超多项式快于最好的可能的经典算法,这需要时间$\widetildeΩ( (n/m)^d + n^{d/2} )$。该算法是基于使用的量子子程序寻找隐藏的移位$d$尺寸,这是一个变种的Kuperberg提出的算法。
2015-08-26 cs.DS quant-ph
A Hybrid Approach to Temporal Pattern Matching
IBM Research Dublin, Ireland(爱尔兰都柏林IBM研究);Dept. of Computer Science & Engineering University of Ioannina, Greece(希腊约阿尼纳大学计算机科学与工程系)
图模式匹配的主要目标是在大型数据图中找到输入图模式查询的所有外观。这种现象被称为匹配。在本文中,我们感兴趣的是在时间图中找到匹配的交互模式。为此,我们提出了一种混合的方法,实现有效的过滤潜在的匹配的基础上的结构和时间。我们的方法利用了一个图形表示,其中边按时间排序。我们提出了真实数据集的实验,说明我们的方法的效率。
2020-01-24 cs.CV cs.DS
Fine-Grained Complexity of Regular Expression Pattern Matching and Membership
目前最快的正则表达式模式匹配和隶属度算法将经典的O(nm)时间算法提高了约log^{3/2}n的因子。而不是集中在一般的模式,我们分析同质模式的有界深度在这项工作中。对于他们的分类分裂的类型容易(强次二次)和硬(基本上是二次时间下SETH)是已知的。我们采取一个非常细粒度的看看从这个分类的硬模式类型,并显示一个二分法:很少类型允许超多对数的改进,而其他模式类型的算法只能通过一个常数的对数因子,假设公式SAT假设改善。
2020-09-21 cs.CC cs.DS
Graph Pattern Matching Preserving Label-Repetition Constraints
图模式匹配是用于诸如社会网络分析之类的各种应用的常规过程。它通常是根据子图同构定义的,是NP-完全的。为了降低其复杂性,已经提出了许多扩展的图模拟,这些扩展集中在模式图的一些拓扑约束,这些约束可以在多项式时间内保持在数据图上。本文讨论了一种新的拓扑约束--标号重复约束的满足问题。据我们所知,现有的多项式方法无法保持这一约束,而且,只能采用子图同构为此,这是成本高昂的。首先,我们提出了一个必要和充分条件,数据子图必须满足保持标签重复约束的模式图。此外,我们定义匹配的基础上的三重模拟的概念,图模拟的扩展,考虑到新的拓扑约束。我们表明,与此扩展,图模式匹配可以在多项式时间内进行,通过提供这样的算法。我们的算法是次二次的数据图的大小,和一般的四次。我们表明,我们的研究结果可以结合正交方法更有表现力的图形模式匹配。
2018-04-12 cs.DB cs.DS
Efficient Pattern Matching for Unordered Term Tree Patterns under Generalized Height-Constrained Bindings
Fukuoka Institute of Technology(福冈工业大学);Hiroshima City University(广岛市立大学)
研究广义高度约束绑定下无序项树模式的模式匹配问题,去除子端口对应绑定树叶子的限制,提出多项式时间匹配算法并实现,实验表明该方法有实际运行时间。
2026-07-17 cs.DS cs.FL
Geometric Pattern Matching Reduces to k-SUM
我们证明了当模式具有固定大小$k$时,一些精确几何模式匹配问题在线性时间内可归结为$k$ -SUM。这在用于在平面中的一组$n$点内搜索一组$k\geq 3$点的类似副本以及用于在$d$空间中的一组$n$点内搜索一组$k\geq d+2$点的仿射像的实RAM模型中成立。作为推论,我们得到了这两个问题的改进的实RAM算法和决策树。特别地,它们可以通过近似线性高度的代数决策树来求解。
2020-03-26 cs.CG cs.DS
On the Complexity of Exact Pattern Matching in Graphs: Determinism and Zig-Zag Matching
标记图中的精确模式匹配是在图$G=(V,E)$中寻找与给定模式$P[1..m]$拼写相同字符串的路径的问题。这个基本问题可以在计算生物学中变异图上更复杂的操作、图数据库中的查询操作和异构网络分析中找到,其中某些路径的节点必须匹配一系列标签或类型。在我们最近的工作中,我们描述了一个条件下界,指出在标记图中的精确模式匹配问题不能在小于二次时间内解决,即,对于任何常数$ε>0$,$O(|E|^{1 - ε} \, m)$时间或$O(|E| \, m^{1 - ε})$时间,除非强指数时间假设(SETH)是假的。即使节点标签和模式$P$是从一个二进制字母表,和$G$被限制为无向图的最大程度的3或有向无环图的最大总和的入度和出度3。它是左开放发生在无向图的最大程度2,即,当图案可以在(循环的)双向串中具有Z字形匹配时。此外,约简创建了一个非确定性的有向无环图,如果确定性会使问题更容易解决,则它是开放的。在这项工作中,我们通过正交向量假设(OV)表明,即使在这些限制的情况下,相同的条件下界也成立。
2019-02-10 cs.CC cs.DS
Pattern matching in $(213,231)$-avoiding permutations
给定置换$σ\in S_k$和$π\in S_n$与$k<n$,\emph{pattern matching}问题是决定$π$是否匹配$σ$作为顺序同构子序列。在$π$和$σ$都避免两个大小- $3$置换$213$和$231$的情况下,我们给出了一个线性时间算法。对于只有$σ$避免$213$和$231$的特殊情况,我们提出了一个$O(max(kn^2,n^2\log(\log(n)))$时间算法.我们扩展我们的研究,避免$213$和$231$的bivincular模式,并提出了一个$O(kn^4)$时间算法。最后我们研究了避免$213$和$231$的最长子序列的相关问题。
2015-11-05 cs.DS math.CO
Matching Patterns with Variables Under Edit Distance
模式$α$是由变量和终止字母组成的字符串。我们说$α$匹配一个词$w$,它只由终端字母组成,如果$w$可以通过用终端词替换$α$的变量来获得。匹配问题,即,决定一个给定的模式是否匹配一个给定的词,被大量研究:它通常是NP完全的,但可以有效地解决具有限制结构的模式类。如果我们感兴趣的是$w$和通过用终端词替换$α$的变量而获得的任何词$u$之间的最小汉明距离是多少(所以在汉明距离下匹配),人们可以设计出有效的算法和匹配的条件下界的类规则模式(其中没有变量出现两次),以及对于我们允许变量无限重复但限制模式结构的模式类,即,不同变量的出现可以交错的方式。此外,在汉明距离下,如果一个变量出现不止一次,并且它的出现可以与其他变量的出现任意交织,即使每个变量只出现一次,匹配问题也是棘手的。本文研究了编辑距离下带变量的模式匹配问题。我们仍然获得有效的算法和匹配的条件下界的类的规则模式,但表明,问题变得,在这种情况下,已经棘手的一元模式,由重复出现的一个单一的变量交错终端。
2022-07-15 cs.CC cs.DS cs.FL
Efficient Pattern Matching in Unordered Term Tree Patterns with Height Constraints
Fukuoka Institute of Technology(福冈工业大学);Hiroshima City University(广岛市立大学)
针对无序树中的模式描述,提出带高度约束变量的无序项树模式,并给出O(N·max{nD^(3/2), S})时间的匹配算法,实验表明算法高效。
2026-07-03 cs.DS cs.FL
Scalable Pattern Matching in Computation Graphs
提出一种基于预计算数据结构的端口图模式匹配新方法,使运行时复杂度与模式数量无关,在量子电路10000个真实模式上实现20倍加速。
2025-03-26 cs.DS math.CO quant-ph
Fast Packed String Matching for Short Patterns
在文本中搜索模式的所有出现是计算机科学中的一个基本问题,在许多其他领域,如自然语言处理,信息检索和计算生物学的应用。在过去的二十年里,一个总的趋势已经出现,试图利用字RAM模型的力量,以加快经典的字符串匹配算法的性能。在这个模型中,算法对长度为w的字进行运算,对字符块进行分组,对字进行算术和逻辑运算需要一个时间单位。在本文中,我们使用专门的字长压缩字符串匹配指令,基于英特尔流SIMD扩展(SSE)技术,设计非常快速的字符串匹配算法的情况下,短模式。从我们的实验结果证明,尽管他们的二次最坏情况下的时间复杂度,新提出的算法成为明显的赢家,平均短模式,在文献中已知的最有效的算法相比。
2012-09-28 cs.DS cs.IR cs.PF