Dynamic Pattern Matching with Wildcards
School of Electrical and Computer Engineering, University of Tehran(德黑兰大学电气与计算机工程学院);Tehran Institute for Advanced Studies(德黑兰高等研究院)
本文提出了一种带通配符的动态模式匹配算法,针对不同非通配符数量情况设计了亚线性时间复杂度的解决方案。
2026-01-14 cs.DS
Pattern Matching with Mismatches and Wildcards
该研究针对带通配符的近似模式匹配问题,提出了基于锚点思想的高效算法,在小参数场景下优于现有方法,还给出了k失配出现位置的结构刻画与下界构造。
2024-05-21 cs.DS
Optimal Space and Time for Streaming Pattern Matching
在这项工作中,我们研究了最长公共子串,模式匹配,并在非对称流模型的最长模式匹配。在这个流模型中,我们对一个字符串进行随机访问,对另一个字符串进行流访问。我们提出了流算法与可证明的保证,这三个基本问题。特别是,我们的算法模式匹配提高了上界和击败随机和确定性流算法的内存上的无条件下限。除此之外,我们提出了在非对称流模型中具有最佳空间和时间的双模式匹配算法。
2021-07-09 cs.DS
A Parameterized Study of Maximum Generalized Pattern Matching Problems
广义函数匹配(GFM)问题从[Eschericht和Rozenberg,1979]开始被深入研究。给定一个模式p和一个文本t,目标是找到从p的字母到t的非空子串的映射,使得将映射应用于p得到t。最近,这个问题已经在参数化复杂性的框架内进行了研究[Fernau,Schmid和Villanger,2013]。在本文中,我们研究了GFM的优化变体(称为Max-GFM)的参数化复杂性,该变体已在[Amir和Nor,2007]中引入。在这里,人们可以用一些特殊的符号来代替一些图案字母“?“,称为通配符或无关紧要,可以映射到文本的任意子字符串。目标是尽量减少使用的通配符数量。我们给出了Max-GFM及其变体的参数复杂性的一个完整分类,在广泛的参数化下,例如,一个字母在文本中出现的次数,文本字母表的大小,一个字母在模式中出现的次数,模式字母表的大小,与任何模式字母匹配的字符串的最大长度,通配符的数量和字符串可以映射到的最大大小。
2014-09-08 cs.CC cs.DS cs.FL
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
Longest Common Extensions with Wildcards: Trade-off and Applications
提出一种针对含通配符字符串的最长公共扩展问题的数据结构,在预处理时间、空间和查询时间之间实现平滑权衡,并证明其在组合和非组合场景下的最优性,同时应用于近似模式匹配和结构分析。
2025-05-22 cs.DS
Full-fledged Real-Time Indexing for Constant Size Alphabets
在本文中,我们描述了一个数据结构,支持模式匹配查询的动态到达的文本在一个字母表的恒定大小。每个新的符号都可以在O(1)的最坏情况下前置到$T$。在任何时候,我们都可以在$O(|P|+k)$时间内报告模式$P$在当前文本中的所有出现,其中$|P|$是$P$的长度,$k$是出现的次数。这解决了在字母表大小恒定的假设下,存在用于字符串匹配的实时的【形】索引方法的一个长期存在的公开问题(参见\cite{AmirN08})。
2013-07-06 cs.DS
Data Structure Lower Bounds for Document Indexing Problems
我们研究数据结构问题有关的文件索引和模式匹配查询和我们的主要贡献是表明,指针机模型的计算可以是非常有用的证明高和无条件的下限,不能在任何其他已知的计算模型与当前的技术。通常,我们的下界匹配已知的空间-查询时间权衡曲线,事实上,对于所有考虑的问题,我们的下界和已知的上界之间有一个非常好的和合理的匹配,至少对于一些输入参数的选择。我们考虑的问题是集合交集查询(报告变量和半组计数变量),索引一组文档的两个模式查询,或禁止模式查询,或查询通配符,和索引的输入集的缺口模式(或两个模式),以找到那些匹配的文档在查询时。
2016-04-21 cs.DS
U-index: A Universal Indexing Framework for Matching Long Patterns
Brunel University London(布鲁内尔伦敦大学);Università di Palermo(巴勒莫大学);ETH Zurich(苏黎世联邦理工学院);King’s College London(伦敦国王学院);University of Maryland, College Park(马里兰大学帕克分校);Ca’ Foscari University of Venice(威尼斯卡福斯卡里大学);ISTI-CNR(意大利国家研究委员会信息科学技术研究所);CWI(荷兰数学和计算机科学研究学会);Vrije Universiteit, Amsterdam(阿姆斯特丹自由大学)
U-index通过在原始文本上增加少量额外空间,利用草图匹配和验证机制,实现高效长模式匹配,适用于计算生物学中的长读映射。
2025-05-27 cs.DS
Compressed Indexing with Signature Grammars
压缩索引问题是将长度为$n$的字符串$S$预处理为支持模式匹配查询的压缩表示。也就是说,给定长度为$m$的字符串$P$,报告$S$中所有出现的$P$。我们提出了一种数据结构,支持模式匹配查询在$O(m + occ (\lg\lg n + \lg^εz))$时间使用$O(z \lg(n / z))$空间,其中$z$是$S$和$ε> 0$的LZ77解析的大小是一个任意小的常数,当字母表是小或$z = O(n^{1 - δ})$的任何常数$δ> 0$。我们还提出了两种数据结构的一般情况下,一个空间增加了$O(z\lg\lg z)$,和一个查询时间的变化从最坏的情况下预期。这些结果改进了以前最好的已知的解决方案。值得注意的是,这是第一个决定$P$是否在$O(m)$时间中使用$O(z\lg(n/z))$空间出现在$S$中的数据结构。我们的研究结果主要是通过一种新的随机语法构建算法与众所周知的技术相结合,模式匹配的2D范围报告。
2018-04-11 cs.DS
Better Indexing for Rectangular Pattern Matching
针对矩形模式匹配索引构建问题,打破“无法达到类似正方形模式界”的普遍认知,提出一种简单结构:大小为O(nlogn)、查询时间O(m+klog^εn)(任意ε>0),且可在O~(n)时间内构建。
2025-08-24 cs.DS
Text Indexing and Pattern Matching with Ephemeral Edits
CWI, Amsterdam, The Netherlands(荷兰阿姆斯特丹CWI);Vrije Universiteit, Amsterdam, The Netherlands(荷兰阿姆斯特丹自由大学)
本文提出了一种基于瞬时编辑的文本索引与模式匹配方法,能够在动态编辑序列中高效支持模式匹配查询。
2026-01-07 cs.DS
On Indexing and Compressing Finite Automata
有限自动机的索引是一种强大的数据结构,它支持定位用查询模式标记的路径,从而解决底层正则语言上的模式匹配。在本文中,我们解决了长期存在的问题,索引任意有限自动机。我们的解决方案包括在寻找一个部分co-lexicographic秩序的状态和证明,在总顺序的情况下,达到一个给定的字符串形式的一个区间的偏序,从而使索引。我们提供了一个下限,说明这样的间隔需要$O(p)$字来表示,$p$是订单的宽度(即其最大反链的大小)。事实上,我们表明,$p$确定有限自动机上的几个基本问题的复杂性:(i)让$σ$是字母表的大小,我们提供了一个编码NFA使用$\lceil\log σ\rceil + 2\lceil\log p\rceil + 2$位每过渡和一个较小的编码DFA使用$\lceil\log σ\rceil + \lceil\log p\rceil + 2$位每过渡。这是通过将Burrows-Wheeler变换推广到任意自动机来实现的。(ii)我们表明,索引模式匹配可以解决在$\tilde O(m\cdot p^2)$查询时间NFA。(iii)我们提供了一个多项式时间算法来索引DFA,同时匹配$ p $的最佳值。另一方面,我们证明了该问题是NP-困难的NFA。(iv)我们表明,在最坏的情况下,经典的幂集构造算法的NFA确定产生一个等效的DFA的大小$2^p(n-p+1)-1$,其中$n$是NFA…
2020-07-15 cs.DS
Conditional Indexing Lower Bounds and Normalization Boundaries for Elastic Subsequence Matching
该研究基于SETH假设,推导弹性子序列匹配中多种得分对应的静态索引下界,分析归一化边界,为相关匹配问题的索引设计提供理论限制。
2026-10-12 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
Sliding Window String Indexing in Streams
给定字母表$Σ$上的字符串$S$,“字符串索引问题”是预处理$S$以随后支持有效的模式匹配查询,即,给定模式字符串$P$,报告$S$中$P$的所有出现。本文研究了“流式滑动窗口字符串索引问题”。这里,字符串$S$作为流到达,每次一个字符,目标是为指定的参数$w$维护最后$w$字符的索引,称为“窗口”。在任何时间点,针对模式$P$的模式匹配查询都可能到达,也是一次一个字符地流式传输,并且必须返回当前窗口内所有出现的$P$。流滑动窗口字符串索引问题自然地捕获了我们想要索引流的最新数据(即窗口)同时支持有效模式匹配的场景。我们的主要结果是一个简单的$O(w)$空间数据结构,使用$O(\log w)$时间与高概率处理每个字符从输入字符串$S$和模式字符串$P$。从$P$报告每个事件使用每个报告事件的附加恒定时间。与以前在类似情况下的工作相比,这个结果是第一个从输入流中获得每个字符有效的最坏情况时间。我们还考虑了问题的延迟变体,其中查询可以在从任一流到达的下一个$δ$字符内的任何点被回答。我们提出了一个$O(w + δ)$空间数据结构,这个问题,提高了上述的时间界限$O(\log(w/δ))$。特别地,对于$δ= εw$的延迟,我们获得每个字符具有恒定时间处理的$O(w)$空间数据结构。实现我们的结果的关键思想是一个新颖的和简单的层次结构的后缀树的独立利益,灵感来自经典的日志结构的合并树。
2023-01-23 cs.DS
Algorithms and Indexing Lower Bounds for Variable String Matching
University of Wrocław(弗罗茨瓦夫大学)
研究可变字符串匹配中广义退化字符串(GD)匹配问题,给出\(\tilde{\mathcal O}(N\sqrt m)\)时间算法。适配索引使GD字符串查询时间达\(\mathcal O(nm)\),并在多种猜想下给出索引下界,指出改进索引ED查询需新方法避免活跃前缀查询瓶颈。
2026-07-10 cs.DS
On Hardness of Jumbled Indexing
混乱索引是针对询问是否存在与表示为Parikh向量的模式匹配的$T$的子串的查询对文本$T$进行索引的问题,即,频率向量对每个字符计数。在过去的四年里,混乱的索引已经引起了人们的兴趣。有一种朴素算法在$O(n^2|Σ|)$时间内对所有答案进行预处理,允许之后进行快速查询,还有一种朴素算法不需要预处理,但有$O(n\log|Σ|)$查询时间。尽管付出了巨大的努力,但在这些运行时间上几乎没有改善。在本文中,我们提供了很好的理由。我们表明,在一个3SUM硬度的假设下,混乱索引的大小$ω(1)$字母需要$Ω(n^{2-ε})$预处理时间或$Ω(n^{1-δ})$查询时间的任何$ε,δ>0$。事实上,在更强的3SUM-硬度假设下,对于任何恒定字母大小$r\ge 3$,存在可描述的固定常数$ε_r$和$δ_r$,使得混乱索引需要$Ω(n^{2-ε_r})$预处理时间或$Ω(n^{1-δ_r})$查询时间。
2014-05-01 cs.DS
Linear-size CDAWG: new repetition-aware indexing and grammar compression
在本文中,我们提出了一种新的方法,结合\emph{compact directed acyclic word graphs}(CDAWGs)和基于语法的压缩。这使我们得到一种高效的自索引,称为线性大小CDAWG(L-CDAWG),它可以用$O(\tilde e_T \log n)$位空间表示,允许对边缘标签进行$O(\log n)$ -时间随机访问和$O(1)$ -时间顺序访问,以及$O(m \log σ+ occ)$ -时间模式匹配。这里,$\tilde e_T$是$T$中最大重复的所有延伸的数目,$n$和$m$分别是文本$T$和给定模式的长度,$σ$是字母大小,$occ$是$T$中模式的出现次数。对于高度重复的文本,已知重复性度量$\tilde e_T$远小于文本长度$n$。对于常数字母表,我们的L-CDAWG实现$O(m + occ)$模式匹配时间与$O(e_T^r \log n)$位的空间,这提高了模式匹配时间Belazzougui等人。的游程长度BWT-CDAWG的系数为$\log \log n$,具有相同的空间复杂度。这里,$e_T^r$是$T$中最大重复的右延伸的数目。作为一个副产品,我们的结果给出了一种方法来构建一个SLP的大小$O(\tilde e_T)$为一个给定的文本$T$在$O(n + \tilde e_T \log σ)$时间。
2017-07-27 cs.DS
Fast and Compact Regular Expression Matching
我们研究了字符串匹配中的4个问题,即正则表达式匹配,近似正则表达式匹配,字符串编辑距离,和子序列索引,在一个标准的字RAM模型的计算,允许在恒定的时间内操作的字符串大小的字。我们展示了如何提高空间和/或删除依赖于字母表的大小,为每个问题使用现有算法的改进制表技术或通过结合已知的算法在一个新的方式。
2008-09-22 cs.DS
Fast Set Intersection and Two Patterns Matching
在本文中,我们提出了一个新的问题,快速集合相交问题,这是预处理集合,以有效地报告集合中的任何两个集合的交集。此外,我们提出了新的解决方案的二维子串索引问题和文件列表问题的两个模式减少到快速集相交问题。
2010-03-11 cs.DS
Fast and Simple Jumbled Indexing for Binary RLE Strings
最近出现了一些重要的论文,讨论了为混乱的模式匹配建立二进制字符串索引的问题,进一步降低输入大小的时间界限现在将是一个具有广泛意义的突破。然而,通过考虑其他自然参数,我们仍然可以在这个问题上取得进展。Badkobeh等人(IPL,2013)和Amir et al. (TCS,2016)给出了在$O (n + ρ^2 \log ρ)$时间内索引二进制字符串的算法,其中$n$是长度,$ρ$是运行次数,Giaquinta和Grabowski(IPL,2013)给出了在$O (n + ρ^2)$时间内运行的算法。在本文中,我们提出了一个新的和非常简单的算法,也运行在$O(n + ρ^2)$的时间,并可以扩展,使索引返回匹配的位置(如果有一个),或使算法只使用$O (n)$位的空间。
2017-02-14 cs.DS
Indexing Weighted Sequences: Neat and Efficient
在\emph{weighted sequence}中,对于序列的每个位置和字母表的每个字母,指定该字母在该位置出现的概率。加权序列通常用于表示不精确或不确定的数据,例如,在分子生物学中,它们以位置权重矩阵的名称而闻名。给定概率阈值$\frac1z$,如果$X$中位置$i,\ldots,i+m-1$处的$P$的字母的概率乘积至少为$\frac1z$,则我们说长度为$m$的字符串$P$出现在加权序列$X$中的位置$i$处。在这篇文章中,我们考虑一个\emph{indexing}变种的问题,在其中,我们要预处理一个加权序列,以回答多个模式匹配查询。我们提出了一个$O(nz)$ -时间结构的$O(nz)$ -大小的索引的加权序列的长度$n$在一个恒定大小的字母表,回答模式匹配查询的最佳,$O(m+Occ)$的时间,其中$Occ$是报告的发生次数。我们的数据结构的基石是一个新的构造家庭的$\lfloor z \rfloor$特殊字符串,携带的信息,发生在加权序列中的所有字符串具有足够的概率。我们获得了一个加权指数,其复杂性与Barton et al.(CPM 2016)之前已知的最有效指数相同,但我们的构造要简单得多。在我们的索引的基本形式所需的最复杂的算法工具是后缀树,我们使用它来开发一个新的,更简单的所谓的属性匹配问题的索引。我们提供了数据结构的实现。我们的构造还使我们能够显著改善Bis…
2017-08-25 cs.DS
Nucleotide String Indexing using Range Matching
本文提出 Ranger,一种基于整数范围和神经网络范围匹配的核苷酸序列索引技术,在保持 Minimap2 相近性能的同时显著降低内存占用,并在有限内存下实现数倍加速,为硬件加速提供了新可能。
2023-08-06 cs.DS q-bio.GN
Cross-Document Pattern Matching
我们研究了一个新的变种的字符串匹配问题称为跨文档字符串匹配,这是一个问题的索引的文档集合,以支持一个有效的搜索模式在选定的文档,其中模式本身是另一个文件的子串。这个问题的几个变种被认为是,和高效的线性空间的解决方案,提出了查询时间的界限,要么不依赖于在所有的模式大小或依赖于它在一个非常有限的方式(双对数)。作为一个副作用,我们提出了一个改进的解决方案,加权水平的祖先问题。
2012-02-18 cs.DS
Pattern Matching under Polynomial Transformation
我们考虑一类模式匹配问题,其中在每个对齐处应用归一化变换。规范化模式匹配在图像处理和音乐信息处理等领域中起着关键作用,在这些领域中,通常对输入应用特定的变换。通过考虑输入的多项式变换类,我们为新老问题提供了快速算法和第一下界。给定一个模式的长度为m和一个较长的文本长度为n,其中两者都被假定为只包含整数值,我们首先显示O(n log m)的时间算法模式匹配下的线性变换,即使在输入中出现的符号。然后,我们将展示如何将该技术扩展到任意次数的多项式变换。接下来我们考虑在多项式变换下求最小汉明距离的问题。我们证明了,对于任何n>0,不可能存在一个O(n m^(1-n))时间的算法添加剂和线性变换的条件下,经典的3SUM问题的硬度。最后,我们考虑一个版本的汉明距离问题下添加剂变换与一个约束k上的最大距离,需要报告。我们给出了一个确定性的O(nk log k)时间的解决方案,然后我们通过仔细使用随机化O(n sqrt(k log k)log n)时间足够小的k。我们的随机化解决方案以高概率在每个位置输出正确答案。
2011-10-28 cs.DS
Gapped Indexing for Consecutive Occurrences
经典的字符串索引问题是将字符串S预处理为支持高效模式匹配查询的紧凑数据结构。典型的查询包括存在查询(决定模式是否出现在S中),报告查询(返回模式出现的所有位置)和计数查询(返回模式出现的次数)。在本文中,我们考虑字符串索引的一个变体,其中目标是压缩表示字符串,使得给定两个模式P1和P2以及间隙范围[α,β],我们可以快速找到P1和P2在[α,β]中的距离的连续出现,即,两个事件彼此紧接着出现,且距离在范围内。我们提出的数据结构,使用n(n)的空间和查询时间的存在和计数(|P1| + |P2| +n^(2/3)*occ^(1/3))的报告的查询(|P1| + |P2| +n^(2/3)*occ^(1/3))。我们补充这一点与条件下界的基础上,集合相交问题表明,任何解决方案,使用n(n)空间必须使用\tilde Ω}(|P1| + |P2| + \sqrt{n})查询时间。为了获得我们的结果,我们开发了新的技术和想法的独立利益,包括一个新的后缀树分解和硬度的一个变种的集合相交问题。
2021-02-04 cs.DS
The Parameterized Suffix Tray
设$Σ$和$Π$是不相交的字母表,分别称为静态字母表和参数化字母表。如果在$Σ$上存在重命名双射$f$,并且在$Σ$上存在恒等的$Π$,并且将$x$的字符映射到$y$的字符,使得两个字符串变得相同,则称$Σ\cup Π$上的两个等长字符串$x$和$y$参数化匹配(p匹配)。在文本中找到给定模式的p-匹配出现的问题的索引版本是字符串匹配中的一个很好的研究课题。在本文中,我们提出了一种用于p匹配的最新索引结构,称为输入文本$T$的参数化后缀托盘,用$\mathsf{PSTray}(T)$表示。我们发现,$\mathsf{PSTray}(T)$占用$O(n)$空间,并支持模式匹配查询在$O(m + \log (σ+π) + \mathit{occ})$时间,其中$n$是$T$的长度,$m$是查询模式$P$的长度,$π$是$T$中$|Π|$的不同符号的数量,$σ$是$T$中$|Σ|$的不同符号的数量,$\mathit{occ}$是$P$在$T$中p匹配出现的数量。本文还介绍了如何利用参数化的$T$后缀树在$O(n)$时间内构造$\mathsf{PSTray}(T)$。
2021-02-04 cs.DS
Extending the Burrows-Wheeler Transform for Cartesian Tree Matching and Constructing It
本文针对笛卡尔树匹配索引构造中指针结构空间开销过大的瓶颈,提出一种紧凑空间且近线性时间的构造方法,并将其扩展为支持多循环文本的动态索引,用于发现与偏移和缩放无关的重复基序。
2024-11-19 cs.DS
Towards a complete perspective on labeled tree indexing: new size bounds, efficient constructions, and beyond
标记树(或trie)是字符串的自然推广,也可以被视为一组字符串的紧凑表示。本文考虑了标记树索引问题,并在空间边界分析、有效构造算法和模式匹配查询等方面提供了一些新的结果。Kakhaju [FOCS 1989]是第一个考虑标记树索引问题的人,他提出了向后trie的后缀树,其中trie中的字符串在叶到根的方向上读取。与向后trie相比,我们称普通trie为向前trie。尽管在Komaju的论文之后有一些后续工作,但索引向前/向后尝试还没有得到很好的理解。在本文中,我们展示了一个完整的角度对索引结构的大小,如后缀树,DAWG,CDAWGs,后缀数组,词缀树,词缀数组的向前和向后尝试。它们中的一些以输入trie的大小$n$占用$O(n)$空间,而另一些在最坏的情况下可以占用$O(n^2)$空间。特别是,我们表明,与$n$节点的正向trie的DAWG的大小是$Ω(σn)$,其中$σ$是在trie中的不同字符的数量。对于大小为$σ= Θ(n)$的字母表,这将成为$Ω(n^2)$。尽管如此,我们表明,有一个紧凑的$O(n)$空间隐式表示的DAWG的前向特里,其空间要求是独立的字母表的大小。该紧凑表示允许在$O(\log σ)$时间上模拟每个DAWG边遍历,并且可以在$O(n)$大小的任何整数字母表上在$O(n)$时间和空间上构造。此外,这容易扩展到第一索引结构,其允许在输入trie树大小的线性空…
2022-01-03 cs.DS
Improved space-time tradeoffs for approximate full-text indexing with one edit error
在本文中,我们有兴趣在索引文本的子串匹配查询与一个编辑错误。也就是说,给定一个由$n$字符组成的文本$T$,在一个大小为$σ$的字母表上,我们被要求构建一个回答以下查询的数据结构:找到文本的所有$occ$子串,这些子串与给定的长度为$m$的字符串$q$的编辑距离最多为$1$。在本文中,我们显示了两个新的结果,这个问题。第一个结果,适用于无界字母表,使用$O(n\log^εn)$(其中$ε$是任何常数,使得$0<ε<1$)空间字和时间查询的答案$O(m+occ)$。这提高了同时在空间和时间的结果科尔等人。第二个结果,只适合于一个恒定的字母表,依赖于压缩的文本索引,并在两个变种:第一个变种使用$O(n\log^ε n)$位的空间和答案查询的时间$O(m+occ)$,而第二个变种使用$O(n\log\log n)$位的空间和答案查询的时间$O((m+occ)\log\log n)$。这第二个结果改进了Lam等人(Mumica 2008)和Chan等人(Mumica 2010)之前获得的恒定字母表的最佳结果。
2014-08-21 cs.DS
Upper and lower bounds for dynamic data structures on strings
我们考虑了一系列简单的动态数据结构问题的字符串。一个更新改变了输入中的一个符号,一个查询要求我们计算长度为$m$和一个较长文本的子串的模式的某个函数。我们给有条件和无条件的下界的变种的确切匹配与通配符,内积,并通过一系列的减少汉明距离计算。作为一个例子,我们表明,不存在一个$O(m^{1/2-\varepsilon})$时间算法的大范围的这些问题,除非在线布尔矩阵向量乘法猜想是假的。我们还提供了几乎匹配的上限,我们考虑的大多数问题。
2018-02-19 cs.CC cs.DS
Text Indexing and Searching in Sublinear Time
我们介绍了第一个索引,可以建立在$o(n)$时间的文本长度$n$,也可以在$o(q)$时间查询的模式长度$q$。在大小为$σ$的字母表上,我们的索引使用$O(n\sqrt{\log n\logσ})$位,在$O(n((\log\log n)^2+\sqrt{\logσ})/\sqrt{\log_σn})$确定性时间内构建,并计算模式在时间$O(q/\log_σn+\log n)$中出现的次数$\mathrm{occ}$。然后可以在$O(\sqrt{\log n\logσ})$时间中找到每个这样的出现。对于任何恒定的$0<\varepsilon<1/2$,通过将空间和构造时间分别稍微增加到$O(n(\sqrt{\log n\logσ}+ \logσ\log^\varepsilon n))$和$O(n\log^{3/2}σ/\log^{1/2-\varepsilon} n)$,我们可以找到$\mathrm{occ}$模式在时间$O(q/\log_σn + \sqrt{\log_σn}\log\log n + \mathrm{occ})$中的出现。我们建立在一个新的文本采样的基础上的差异覆盖,它享有的属性,使我们能够有效地计算最长的共同前缀在恒定的时间。我们扩展我们的研究结果的二级内存模型,以及,在那里我们给的第一个建设$o(\mathit{Sort}(n))$ I/O的数据结构与后缀数…
2019-07-15 cs.DS
String Indexing for Top-$k$ Close Consecutive Occurrences
本文研究了 top-$k$ 近邻连续出现的字符串索引问题,旨在紧凑表示字符串的同时支持高效查询距离最小的连续出现,并提出了三种时空权衡方案及线段相交转化和树递归聚类等新技术。
2024-02-14 cs.DS
Linear-Space Substring Range Counting over Polylogarithmic Alphabets
Bille和Gørtz(2011)最近介绍了子串范围计数的问题,为此我们被要求将具有整数标签的$n$字符的字符串$S$存储在([0,u])中,以便稍后,给定间隔([a,b])和长度为$m$的模式$P$,我们可以快速计数其第一个字符的标签在([a,u])中的$P$的出现次数。b])。他们展示了如何在$\Oh{n \log n / \log \log n}$空间中存储$S$,并在$\Oh{m + \log \log u}$时间中回答查询。我们证明,如果$S$是在一个字母表的大小(\polylog(n)),那么我们可以实现最佳的线性空间。此外,如果(u = n \polylog(n)),则我们还可以将时间减少到$\Oh{m}$。我们的结果给出了位置受限子串计数的线性空间和时间界,以及区间索引子串、间隔索引子串和对齐模式匹配的计数形式.
2012-02-15 cs.DS
Partial Data Compression and Text Indexing via Optimal Suffix Multi-Selection
考虑从无界字母表中提取的输入文本串T[1,N]。本文研究了基于后缀的数据压缩和文本索引问题中的部分计算,如(I)从T的Burrows-Wheeler变换中检索K<=N个连续符号的任何片段,以及(II)检索后缀数组或后缀树中K<=N个连续条目的任何块。以前的文献需要O(N log N)的比较(和时间)来解决这些问题,通过解决构建整个Burrows-Wheeler变换或T的文本索引的总问题,并执行后处理来挑选出想要的部分。我们引入了一种新的自适应方法来解决上述部分计算问题,并解决了O(K log K + N)比较和时间的部分问题,提高了K=O(N)的最佳运行时间O(N log N)。这些部分计算问题是密切相关的,因为它们共享一个共同的瓶颈:后缀多选择问题,即输出秩为r_1,r_2,.的后缀,r_1<r_2<... <r_K,r_i在[1,N]中。这个问题的特殊情况是众所周知的:K=N是后缀排序问题,它是弦乐学中的主力,有数百个应用程序,K=1是最近研究的后缀选择。我们证明了后缀多重选择可以在Theta(N log N - sum_{j=0} ^K Delta_j log Delta_j+N)时间和比较中解决,其中r_0=0,r_{K+1} =N+1,并且对于0<=j<=K,Delta_j= r_{j+1} -r_j。这是渐近最优的,并且也与[Dobkin,Munro,JACM 28(3…
2011-10-15 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
Optimal Substring-Equality Queries with Applications to Sparse Text Indexing
我们考虑的问题编码的字符串长度$n$从一个整数字母表的大小$σ$,以便访问和子串的平等查询(即,确定任何两个子串的平等)可以有效地回答。任何支持访问的可解码编码都必须采用$n\logσ+ Θ(\log (n\logσ))$位。我们描述了一个新的数据结构匹配这个下限时,$σ\leq n^{O(1)}$,同时支持查询的最佳$O(1)$的时间。此外,我们表明,该字符串可以被覆盖在这个结构的地方。$Θ(\log n)$位的冗余和恒定的查询时间以指数方式打破了已知在只读模型中保持的下限。使用我们的新字符串表示,我们获得了第一个到位次二次(事实上,在某些情况下,甚至次线性)算法的几个字符串处理问题的恢复模型:输入字符串是重复的,必须在计算终止前恢复。特别是,我们描述了第一次到位次二次蒙特卡罗解决方案的稀疏后缀排序,稀疏LCP阵列建设,后缀选择问题。唯一例外的后缀选择,我们的算法也是第一次运行在次线性时间足够小的输入后缀集。结合这些解决方案,我们得到了第一个次线性时间的Monte Carlo算法在紧空间中建立稀疏后缀树。我们还展示了如何使用小空间去随机化我们的算法。这导致了第一个Las Vegas就地算法在$O(n\log n)$时间内计算完整的LCP阵列,并导致了第一个Las Vegas就地算法在$O(n^{1.5}\sqrt{\log σ})$时间内解决稀疏后缀排序和稀疏LCP阵列构造问题。…
2020-05-11 cs.DS
Parameterized Pattern Matching -- Succinctly
我们考虑$Parameterized$ $Pattern$ $Matching$问题,其中模式$P$匹配文本$\mathsf{T}$中的某个位置,当且仅当模式的字母符号与文本的字母符号之间存在一一对应关系。更具体地,假设文本$\mathsf{T}$包含来自静态字母表$Σ_s$和参数化字母表$Σ_p$的$n$字符,其中$Σ_s \cap Σ_p = \varnothing$和$|Σ_s \cup Σ_p|=σ$。模式$P$匹配$\mathsf{T}$的子串$S$,当静态字符完全匹配时,并且存在一个一对一函数,将$S$中的参数化字符重命名为$P$中的参数化字符。以前的索引解决方案[Baker,STOC 1993],称为$Parameterized$ $Suffix$ $Tree$,需要$Θ(n\log n)$位空间,并且可以在$\mathcal{O}(|P|\log σ+ occ)$时间内找到$P$的所有$occ$出现。在本文中,我们提出了第一个简洁的索引,占用$n \log σ+ \mathcal{O}(n)$位和回答查询在$\mathcal{O}((|P|+ occ\cdot \log n) \logσ\log \log σ)$时间。我们还提出了一个紧凑的索引,占用$\mathcal{O}(n\logσ)$位和回答查询在$\mathcal{O}(|P|\log σ+ occ\cdo…
2016-04-05 cs.DS
Probabilistic Threshold Indexing for Uncertain Strings
字符串形成计算机系统中的基本数据类型。自从计算机科学诞生以来,字符串搜索一直被广泛研究。越来越多的应用程序必须处理不精确的字符串或字符串中的模糊信息。当字符串包含不确定性时,字符串匹配就变成了概率事件,即字符串的每个位置都可能有不同的可能字符,每个字符的出现概率都相关。这种不确定字符串在诸如生物序列数据、事件监测和自动ECG注释的各种应用中是普遍的。我们探讨的问题,索引不确定字符串,以支持高效的字符串搜索。在本文中,我们考虑两个基本问题的字符串搜索,即子串搜索和字符串列表。在子串搜索中,任务是在一个不确定的字符串中找到一个确定的字符串。我们制定的字符串列表问题的不确定字符串,其目标是输出所有的字符串从字符串的集合,包含可能发生的确定性查询字符串。这两个问题的索引解决方案是显着更具挑战性的不确定字符串比确定性字符串。给定构造时间概率值$τ$,我们的索引可以在线性空间中构造,并且对于概率阈值参数大于$τ$的任意值,支持在接近最佳时间的查询。据我们所知,这是第一个在不确定字符串中搜索的索引解决方案,它实现了强大的理论界,并支持概率阈值参数的任意值。我们还提出了一个近似的子串搜索索引,可以回答子串搜索查询的最佳时间与附加错误。我们进行实验来评估我们的指标的性能。
2015-09-29 cs.DB cs.DS
An Extension of Linear-size Suffix Tries for Parameterized Strings
在本文中,我们提出了一个新的索引结构参数化字符串,我们称之为PLST,通过推广线性大小后缀尝试普通字符串。如果在符号集上存在使两个参数化字符串重合的双射,则称这两个参数化字符串匹配。PLST适用于参数化模式匹配问题,即判断输入的参数化文本是否具有与输入的参数化模式匹配的子串。PLST的大小与文本大小成线性关系,利用这一特性,我们的算法在线性时间内解决了模式大小的参数化模式匹配问题。PLST可以被看作是参数化后缀尝试的压缩版本以及线性大小后缀尝试和参数化后缀树的组合。我们的实验表明,PLST是更有效的空间比参数化的后缀树高度重复的字符串。
2019-09-04 cs.DS
Elastic Founder Graphs Improved and Enhanced
为模式匹配索引标记图是泛基因组学的核心挑战。Equi等人(Micromica,2022)开发了弹性创始人图($\mathsf{EFG}$),表示长度为$n$的$m$序列的比对,从字母表$Σ$加上特殊空位字符绘制:路径拼写原始序列或其重组。通过强制执行半无重复属性,$\mathsf{EFG}$允许用于线性时间模式匹配的多项式空间索引,突破了索引标记图的条件下界(Equi等人,SOFSEM 2021)。在这项工作中,我们提高了空间的$\mathsf{EFG}$索引回答模式匹配查询在线性时间,从线性的三个连续节点标签拼写的所有字符串的长度,线性的边缘标签的大小。然后,我们开发了线性时间构造算法优化不同的指标:我们改进现有的线性构造算法$O(mn)$,通过解决新的排他性祖先集问题的树,我们提出了,简化的无间隙设置,$O(mn)$时间的解决方案,最大限度地减少块高度,我们概括了替换块高度与前缀感知的高度。最后,为了展示框架的多功能性,我们开发了一个基于BWT的$\mathsf{EFG}$索引,并研究了如何编码和执行文档列表查询的一组路径的图形,报告哪些路径呈现给定的模式作为子串。我们提出的$\mathsf{EFG}$框架作为一个改进和增强版本的框架的无间隙设置,以及建设方法,是有效的,在任何设置有关的对齐序列的分割。
2023-03-09 cs.DS
Improved Circular Dictionary Matching
本文研究任意字典的循环字典匹配问题,通过扩展后缀数组并提出LCP数组采样机制,在压缩空间内实现了高效的查询时间。
2025-04-04 cs.DS
Optimal Random Access and Conditional Lower Bounds for 2D Compressed Strings
Stony Brook University(石溪大学)
该研究针对二维数据压缩索引的次优问题,提出首个二维文法压缩字符串的最优随机访问数据结构,证明模式匹配条件下界及基本二维查询的硬度假设,建立二维与一维压缩索引复杂度的关联。
2025-10-22 cs.DS
Right-to-left online construction of parameterized position heaps
如果存在一个双射将一个字符串的字符映射到另一个字符串的字符,使得两个字符串变得相同,则称两个长度相等的字符串参数化匹配。参数化模式匹配问题是,给定两个字符串$T$和$P$,找出$T$中参数化匹配$P$的子串的出现次数. Diptarama等人[Position Heaps for Parameterized Strings,CPM 2017]提出了一种称为参数化位置堆的索引数据结构,并给出了从左到右的在线构造算法。本文提出了一种从右到左的参数化位置堆的在线构造算法。对于长度为$n$的文本串$T$,在两种分别大小为$σ$和$π$的字母表$Σ$和$Π$上,我们的构造算法在$O(n \log(σ+ π))$时间和$O(n)$空间中运行。我们的从右到左的参数化位置堆支持$O(m \log (σ+ π) + m π+ \mathit{pocc}))$时间的模式匹配查询,其中$m$是查询模式$P$的长度,$\mathit{pocc}$是要报告的出现次数。我们的建设和模式匹配算法是有效的Diptarama等人。的算法。
2018-08-03 cs.DS
Pattern Masking for Dictionary Matching
本文研究字典匹配模式掩码(PMDM)问题,证明其NP完全性,提出多种精确算法与数据结构,建立其与最小并集问题的双向归约,得到紧近似比的近似算法,可用于敏感数据记录链接与查询词丢弃场景。
2024-03-08 cs.DS
Which Regular Expression Patterns are Hard to Match?
正则表达式构成了形式语言理论中的一个基本概念,并且经常在计算机科学中用于定义搜索模式。这些问题的经典算法构造并模拟与表达式对应的非确定性有限自动机,从而产生$O(mn)$运行时间(其中$m$是模式的长度,$n$是文本的长度)。这个运行时间可以稍微改善(通过多对数因子),但没有明显更快的解决方案。与此同时,更快的算法存在的各种特殊情况下的正则表达式,包括字典匹配,字典匹配,子集匹配,断字问题等,在本文中,我们表明,正则表达式匹配的复杂性可以根据其{ \em深度}(当解释为一个公式)。我们的结果适用于表达式,涉及串联,或,Kleene星和Kleene加。对于深度为2的正则表达式(涉及上述运算符的任何组合),我们展示了以下二分法:匹配和成员资格测试可以在近线性时间内解决,除了“星的串联”,假设强指数时间假设(SETH),它不能在强次二次时间内解决。对于深度为3的正则表达式,情况要复杂得多。然而,我们表明,所有的问题都可以解决在强次二次时间,或不能解决在强次二次时间假设SETH。成员测试的一个有趣的特殊情况涉及“串联OR的星形”形式的正则表达式,例如,$[a|ab|bc]^*$。这对应于所谓的{ \em断字}问题,对于该问题,已知具有(大致)$O(n\sqrt{m})$的运行时间的动态规划算法。我们发现,后者的界限是不紧,并提高运行时间$O(nm^{0.44\ldots})$。
2016-09-26 cs.CC cs.DS
Position Heaps for Parameterized Strings
我们提出了一种新的索引结构参数化字符串,称为参数化位置堆。参数化位置堆适用于参数化模式匹配问题,其中如果存在从模式的符号到子串的符号的双射映射,则模式匹配文本的子串。我们提出了一个在线构造算法的参数化位置堆的文本,并表明我们的算法运行在线性时间相对于文本大小。我们还表明,通过使用参数化的位置堆,我们可以找到所有出现的模式在文本中的线性时间的产品的模式大小和字母表的大小。
2017-04-18 cs.DS
Algorithms and Complexity on Indexing Founder Graphs
研究了标号图中字符串的匹配问题。以前的研究表明,除非正交向量假设(OVH)是假的,否则无法在强次二次时间内解决这个问题,也无法在多项式时间内索引图以有效地回答查询(Equi et al. ICALP 2019,SOFSEM 2021)。这些条件下界甚至覆盖具有二进制字母表的确定性图,但是自然也存在易于索引的图类:例如Wheeler图(Gagie et al. Theor.比较科学2017)覆盖图承认基于Burrows-Wheeler变换的索引方案。然而,识别一个图是否是Wheeler图是NP完全的(Gibney,Escherachan,ESA 2019)。我们提出了一种方法来缓解惠勒图的建设瓶颈。而不是从一个任意的图开始,我们研究从多序列比对(MSA)引起的图形。弹性退化弦(Bernadini et al. SPIRE 2017,ICALP 2019)可以被看作是这样的图,我们在这里介绍它们的推广:弹性创始人图。我们首先证明,即使是这样的诱导图是很难索引下OVH。然后,我们介绍了两个子类,重复自由和半重复自由图,这是很容易索引。我们给出了一个线性时间算法来构造一个无重复的非弹性创始人图从一个无间隙的MSA,和(参数化)近线性时间算法来构造半无重复(无重复,分别)弹性创始人图从一般MSA。最后,我们证明了无重复弹性创始人图承认减少惠勒图在多项式时间。
2022-06-10 cs.CC cs.DS
Contextual Pattern Matching
University of Chile(智利大学)
本文针对重复字符串集合索引场景提出上下文模式匹配新查询,给出首个利用集合重复性相关空间的解决方案,实现了不同空间时间权衡,可高效查找指定上下文长度下的模式出现情况。
2026-08-19 cs.DS
Text Indexing for Long Patterns using Locally Consistent Anchors
本文提出基于局部一致锚点的文本索引,在已知模式长度下界时,同时优化索引空间、查询时间、构建空间与构建时间,实验优于经典索引。
2024-07-16 cs.DB cs.DS
Faster Cache-Efficient Pattern Matching for Deterministic Wheeler Pangenome Graphs
DAIS, Ca’ Foscari University of Venice(威尼斯卡福斯卡里大学DAIS)
针对Wheeler DFA模式匹配中I/O操作过多的问题,提出首个缓存友好算法,通过二分查找与顺序扫描结合减少I/O,在真实泛基因组图上速度提升达500倍。
2026-07-03 cs.DS
A Fast and Small Subsampled R-index
$r$指数(Gagie等人,JACM 2020)代表了重复文本集合的压缩索引的突破,其性能超过其替代品的数量级。它的空间使用,$\mathcal{O}(r)$,其中$r$是在文本的Burrows-Wheeler变换中运行的次数,但是比Lempel-Ziv和基于语法的索引大,并且使得它在各种较温和重复的现实生活场景中不有趣。在本文中,我们介绍了$sr$指数,一个变种,限制空间$\mathcal{O}(\min(r,n/s))$的长度为$n$和一个给定的参数$s$的文本,在乘以$s$的时间,每次发生的报告。$sr$索引是通过仔细地对由$r$索引索引的文本位置进行二次采样而获得的,以我们证明仍然能够以保证性能的方式支持模式匹配。我们的实验表明,$sr$索引大幅优于几乎所有其他压缩索引的重复文本,在时间和空间,甚至匹配性能的$r$索引,而使用1.5- 3.0倍的空间。只有一些基于Lempel-Ziv的索引比$sr$索引实现更好的压缩,使用大约一半的空间,但它们慢一个数量级。
2021-03-29 cs.DS
Elastic-Degenerate String Matching with 1 Error
弹性简并弦是一个总长度为$N$的$n$有限弦集合的序列,用来表示一组相关的DNA序列,也称为泛基因组。ED字符串匹配(EDSM)问题在于报告ED文本中长度为$m$的模式的所有出现。这个问题最近受到了组合模式匹配团体的一些关注,最终产生了$\tilde{\mathcal{O}}(nm^{ω-1})+\mathcal{O}(N)$时间算法[Bernardini等人,SIAM J.计算2022],其中$ω$表示矩阵乘法指数,并且$\tilde{\mathcal{O}}(\cdot)$表示法抑制多对数因子。在$k$ -EDSM问题中,EDSM的近似版本,我们被要求报告所有模式出现最多$k$错误。$k$-EDSM可以在编辑距离下以$\mathcal{O}(k^2mG+kN)$时间求解,或者在汉明距离下以$\mathcal{O}(kmG+kN)$时间求解,其中$G$表示ED文本中的字符串的总数[Bernardini等人,Theor. Comput. Sci. 2020年]。不幸的是,$G$仅受$N$约束,因此即使对于$k=1$,现有算法在最坏情况下也在$Ω(mN)$时间内运行。本文证明了$1$-EDSM在编辑距离下可以在$\mathcal{O}((nm^2 + N)\log m)$或$\mathcal{O}(nm^3 + N)$时间内求解.对于决策版本,我们提出了一个更快的$\mathcal{…
2022-09-02 cs.DS