Sorted Range Reporting Revisited
我们考虑二维排序范围报告问题。我们的数据结构需要O(nlglg n)字的空间和O(lglg n + klglg n)的查询时间,其中k是查询范围内的点数。这种数据结构在查询时间上将Nekrich和Navarro [8]的最新结果改进了O(lglg n),并且与未排序范围报告的最新技术水平相匹配[1]。
2013-08-15 cs.DS
Dynamic Range Reporting in External Memory
在本文中,我们描述了一个动态的外部存储器的数据结构,支持范围报告查询在三维$O(\log_B^2 N + \frac{k}{B})$ I/O操作,其中$k$是在答案中的点数和$B$是块的大小。这是在$\log_B^{O(1)} N + O(\frac{k}{B})$ I/O中回答三维范围报告查询的第一个动态数据结构。
2010-06-21 cs.DS
Substring Range Reporting
我们重新审视各种字符串索引问题的范围报告功能,即位置限制的子串搜索,索引子串的差距,索引子串的间隔。我们得到以下主要结果。{itemize}我们将上述每个问题有效地归约到一个新的问题,我们称之为\emph{substring range reporting}。因此,我们统一了以前的工作,表明我们可以限制我们的注意力,而不是单独研究上述每个问题。我们展示了如何解决子串范围报告的最佳查询时间和小空间。结合我们的减少,这导致显着改善上述问题的时空权衡。特别是,对于每个问题,我们获得了最佳的时间查询和$O(n\log^{O(1)} n)$空间,其中$n$是索引字符串的长度的第一个解决方案。我们表明,我们的子串范围报告的技术推广到\emph{substring range counting}和\emph{substring range emptiness}的变种。我们还获得了这些问题的非平凡的时空权衡。{itemize}我们的子字符串范围报告的界限是基于后缀树和范围报告数据结构的新组合。这些减少是简单和通用的,并且可以应用于字符串索引与范围报告的其他组合。
2011-08-18 cs.DS
External Memory Three-Sided Range Reporting and Top-$k$ Queries with Sublogarithmic Updates
提出了一种外部存储器数据结构,用于在点的插入和删除下维护$N$二维点的动态集合,并支持3边范围报告查询和顶- $k$查询,其中顶- $k$查询报告在给定$x$范围内具有最高$y$值的$k$点。对于任何常数$0<\varepsilon\leq \frac{1}{2}$,构建支持摊销的$O(\frac{1}{\varepsilon B^{1-\varepsilon}}\log_B N)$ IO中的更新和摊销的$O(\frac{1}{\varepsilon}\log_B N+K/B)$ IO中的查询的数据结构,其中$B$是外部存储器块大小,$K$是查询的输出大小(对于顶部$k$查询,$K$是$k$和查询间隔中的点数的最小值)。数据结构使用线性空间。更新边界是一个显着的因素$B^{1-\varepsilon}$改善以前的最佳更新边界的两个查询问题,同时保持在相同的查询和空间的界限。
2015-09-28 cs.CG cs.DS
A Dynamic I/O-Efficient Structure for One-Dimensional Top-k Range Reporting
本文提出了一种用于“top-k范围报告”的外部存储器结构,该结构使用线性空间,在O(lg_Bn + k/B)I/O内回答查询,并支持在O(lg_Bn)摊销I/O内更新,其中n是输入大小,B是块大小。这改进了每次更新导致O(lg^2_Bn)摊销I/O的现有技术。
2014-03-26 cs.DS
Four-Dimensional Dominance Range Reporting in Linear Space
在本文中,我们研究了四维优势范围报告问题,并提出了线性或几乎线性空间使用的数据结构。我们的结果也可以用来回答四维查询,有界的五个方面。本文提出的第一种数据结构使用线性空间,在$O(\log^{1+\varepsilon}n + k\log^{\varepsilon} n)$时间内回答查询,其中$k$是报告的点数,$n$是数据结构中的点数,$\varepsilon$是任意小的正常数。我们的第二个数据结构使用$O(n \log^{\varepsilon} n)$空间,并在$O(\log n+k)$时间内回答查询。这些是这个问题的第一个数据结构,使用线性(分别为)。$O(n\log^{\varepsilon} n)$)空间,并在多对数时间内回答查询。为了比较,以前已知的最快的线性空间或$O(n\log^{\varepsilon} n)$空间数据结构支持在$O(n^{\varepsilon} + k)$时间内的查询(Bentley和Mauer,1980)。我们的结果可以推广到$d\ge 4$维数。例如,我们可以使用$O(n\log^{d-4+\varepsilon}n)$空间在$O(\log\log n (\log n/\log\log n)^{d-3} + k)$时间内回答$d$维优势范围报告查询.与以前已知的最快结果(Chan,2013)相比,我们的数据结构在不增加查询时间的情况下减少…
2020-03-15 cs.CG cs.DS
Fully Retroactive Approximate Range and Nearest Neighbor Searching
我们描述了完全追溯的动态数据结构的近似范围报告和近似最近邻报告。我们将展示如何维护,任何积极的常数$d$,一组$n$点在$\R^d$索引的时间,这样我们就可以执行插入或删除在时间轴中的任何一点在$O(\log n)$摊销时间。对于任何小的常量$ε>0$,我们支持$(1+ε)$ -在$O(\log n + k)$时间中的时间轴的任何点的近似范围报告查询,其中$k$是输出大小。我们还展示了如何回答$(1+ε)$ -近似最近邻查询的任何点在过去或现在的$O(\log n)$时间。
2011-09-01 cs.CG cs.DS
Towards Tight Lower Bounds for Range Reporting on the RAM
在正交范围报告问题中,我们要对$U \times U$网格上的一组具有整数坐标的$n$点进行预处理。目标是支持报告轴对齐查询矩形内的所有$k$点。这是数据库和计算几何中最基本的数据结构问题之一。尽管问题的重要性,其复杂性仍然没有得到解决的字RAM。在上界侧,存在三个最佳权衡:(1.)查询时间$O(\lg \lg n + k)$与$O(nlg^{\varepsilon}n)$字的空间为任何常数$\varepsilon>0$。(2.)查询时间$O((1 + k) \lg \lg n)$与空间的$O(n \lg \lg n)$字。(3.)查询时间$O((1+k)\lg^{\varepsilon} n)$与最佳$O(n)$字的空间。然而,唯一已知的查询时间下限是$Ω(\log \log n +k)$,即使是线性空间数据结构。所有这三个目前最好的上限权衡减少范围报告球继承问题。球继承是一个问题,基本上封装了所有以前的尝试,解决范围报告的字RAM。在本文中,我们取得了进展,通过证明细胞探测球继承的下限范围报告的上限和下限之间的差距。我们的下限是严格的大范围的参数,不包括任何进一步的进展范围报告使用球继承减少。
2014-11-03 cs.CC cs.DS
Fast Preprocessing for Optimal Orthogonal Range Reporting and Range Successor with Applications to Text Indexing
在字RAM模型下,我们设计了三种数据结构,它们可以在$n \times n$网格中的$n$点上在$O(n\sqrt{\lg n})$时间内构造。第一数据结构是支持在$O(\lg\lg n+k)$时间上的正交范围报告的$O(n\lg^ε n)$字结构,其中$k$表示输出大小,$ε$是任意小的常数.第二种是支持$O(\lg\lg n)$时间的正交范围后继的$O(n\lg\lg n)$字结构,而第三种是支持$O(\lg\lg n+k)$时间的排序范围报告的$O(n\lg^ε n)$字结构.当空间开销必须在$O(n\ polylog\ n)$字内时,这些数据结构的查询时间是最佳的。它们的精确空间边界与实现相同查询时间的最佳已知结果的空间边界相匹配,并且$O(n\sqrt{\lg n})$构造时间超过了先前预处理的边界。以前,在2D范围搜索结构中,只有Chan和Pagetrajeccu的正交范围计数结构(SODA 2010)和Belazzougui和Puglisi的线性空间,正交范围后继者的$O(\lg^ε n)$查询时间结构(SODA 2016)可以在相同的$O(n\sqrt{\lg n})$时间内构建。因此,我们的工作是第一个实现相同的预处理时间的最佳正交范围报告和范围继任者。我们还将我们的研究结果,以提高建设时间的文本索引。
2020-06-22 cs.DS
Orthogonal Range Reporting and Rectangle Stabbing for Fat Rectangles
本文研究了输入对象或查询为胖矩形的特殊情况下的两个几何数据结构问题。我们表明,在这种情况下,一个显着的改善相比,一般情况下,可以实现。我们描述的数据结构,回答二维和三维正交范围报告查询的情况下,查询范围是一个\emph{fat}矩形。我们的二维数据结构使用$O(n)$字,并支持在$O(\log\log U +k)$时间查询,其中$n$是数据结构中的点的数量,$U$是宇宙的大小和$k$是查询范围中的点的数量。我们的三维数据结构需要$O(n\log^{\varepsilon}U)$字的空间和回答查询在$O(\log \log U + k)$时间。我们还考虑了一组三维胖矩形上的矩形刺伤问题。我们的数据结构使用$O(n)$空间,并在$O(\log U\log\log U +k)$时间内回答穿刺查询。
2019-05-07 cs.DS
Dynamic Unit-Disk Range Reporting
本文研究动态单位圆盘范围报告问题,通过提出圆弧浅切割算法将查询时间从 O(log^2 n/log log n+k) 改进为 O(log n+k),同时保持更新复杂度不变,并进一步优化了动态单位圆盘范围空查询的更新时间与查询时间。
2024-12-30 cs.CG cs.DS
Sorted Range Reporting and Range Minima Queries
针对有序范围选择问题,提出一种线性空间的最优权衡方案,预处理时间O(n)、查询时间O(k log k)且输出有序;同时给出一种接近线性时间的简单范围最小值查询方法,兼具实用性与效率。
2023-09-19 cs.DS
I/O-Efficient Data Structures for Colored Range and Prefix Reporting
受信息检索应用的启发,我们考虑了秩空间中的一维着色范围报告问题。目标是为集合C_1,...,C_m \subseteq {1,.,sigma},其支持以下类型的查询:给定索引a、b,报告集合Union_{a <= i <= b} C_i。我们在I/O模型中研究了这个问题,并证明了存在一个最优线性空间数据结构,它能在O(1+k/B)I/O中回答查询,其中k表示输出大小,B表示磁盘块大小.事实上,我们得到了相同的三边正交范围报告的更难的问题。在这个问题中,我们要对秩空间中的一组n个二维点进行预处理,使得可以报告形式为[x_1,x_2] x(-infinity,y]的查询矩形内的所有点。这个问题的最佳前界要么是O(n lg^2_Bn)空间和O(1+k/B)查询I/O,要么是O(n)空间和O(lg^(h)_Bn +k/B)查询I/O,其中lg^(h)_Bn是以B为底的对数迭代h次,对于任何常数整数h。前面的边界都是在不可分割假设下实现的,而我们的解决方案利用了底层机器的全部功能。因此,打破不可分割性假设为我们提供了更清晰和最优的边界。我们的研究结果也意味着一个最佳的解决方案,下面的彩色前缀报告问题。给定一组字符串S,每个磁盘块的长度为O(1),函数c:S -> 2^{1,.,sigma},支持以下类型的查询:给定字符串p,报告集合Union_{x in S intersection p*}…
2011-04-15 cs.DS cs.IR
I/O-Efficient Dynamic Planar Range Skyline Queries
我们提出了第一个完全动态的最坏情况I/O有效的数据结构,支持平面正交\textit{3-sided range skyline reporting queries}在$\bigO (\log_{2B^ε} n + \frac{t}{B^{1-ε}})$ I/O和更新$\bigO (\log_{2B^ε} n)$ I/O,使用$\bigO (\frac{n}{B^{1-ε}})$块的空间,$n$输入平面点,$t$报告点,和参数$0 \leq ε\leq 1$。我们得到的结果,通过扩展Sundar的优先级队列的消耗,以支持操作\textsc{DeleteMin}和\textsc{CatenateAndAttrite}在$\bigO (1)$最坏情况下的I/O,并在$\bigO(1/B)$摊销的I/O给定的一个恒定数量的块已经加载到主存中。最后,我们表明,任何基于指针的静态数据结构,支持\textit{dominated maxima reporting queries},即困难的特殊情况下,4边天际线查询,在$\bigO(\log^{\bigO(1)}n +t)$最坏的情况下的时间必须占用$Ω(n \frac{\log n}{\log \log n})$空间,通过适应一个类似的下界参数平面4边范围报告查询。
2012-07-10 cs.DS
Parameter-free Locality Sensitive Hashing for Spherical Range Reporting
我们提出了一种用于点集$S$上的球面范围报告的数据结构,即,报告位于给定查询点$q$的半径$r$内的$S$中的所有点。我们的解决方案建立在Indyk和Motwani的局部敏感哈希(LSH)框架之上,该框架代表了高维近邻问题的渐近最佳解决方案。虽然传统的LSH数据结构有几个参数,其最佳值取决于从$q$到$S$的点的距离分布,我们的数据结构是无参数的,除了空间使用,这是由用户配置。然而,它的预期查询时间基本上匹配LSH数据结构的查询时间,LSH的参数已经在给定的空间约束下针对所讨论的数据和查询 * 进行了 * 最优选择。特别是,我们的数据结构提供了一个平滑的权衡之间的硬查询(通常由标准LSH解决)和容易的查询,如报告的点的数量是一个恒定的分数的$S$,或几乎所有的点在$S$远离查询点。相反,已知的数据结构仅基于输入的某些参数来固定LSH参数。该算法的预期查询时间以$O(t (n/t)^ρ)$为界,其中$t$是要报告的点数,而$ρ\in (0,1)$取决于数据分布和所用LSH族的强度。我们进一步提出了一种无参数的方式使用多探测,LSH家庭,支持它,并表明,对于许多这样的家庭,这种方法使我们能够得到预期的查询时间接近$O(n^ρ+t)$,这是最好的,我们可以希望实现使用LSH。以前在高维中最好的运行时间是$Ω(t n^ρ)$。对于许多数据分布,接近$q$的点集的固有维数较低,我们可以给出改…
2016-07-20 cs.DS
On Dynamic Range Reporting in One Dimension
我们考虑的问题,保持一个动态的整数集和回答查询的形式:报告一个点(相当于所有点)在一个给定的间隔。范围搜索是整数搜索的一种自然和基本变体,可以使用前导搜索来解决。然而,对于一个RAM的W位字,我们展示了如何执行更新在O(lg w)的时间和O(lglg w)的时间回答查询。更新时间与van Emde Boas结构相同,但查询时间以指数方式更快。现有的下限表明,实现我们的查询时间的前身搜索需要双指数较慢的更新。我们提出了一些论据来支持我们的解决方案是最佳的猜测。我们的解决方案是基于一个新的和有趣的递归的想法,这是“更极端”的范埃姆德博厄斯递归。van Emde Boas在trie中的每条路径上使用简单的递归(重复的减半),而我们在每条路径上使用非平凡的van Emde Boas式递归。尽管如此,我们的算法在从正确的角度看时非常干净。为了实现我们的数据结构的线性空间,我们解决了一个问题,这是独立的利益。我们开发了第一个需要次线性空间的动态完美散列方案。这给出了使用低空间的动态Bloomier滤波器(稀疏向量的近似存储方案)。我们加强以前的下界,以表明这些结果是最优的。
2005-02-05 cs.DS
Orthogonal Range Searching on the RAM, Revisited
在计算几何中,正交范围搜索是研究最广泛的课题之一,我们提出了几个新的结果。我们的所有结果都是在标准字RAM模型的秩空间中的点:** 我们提出了两个数据结构的2-D正交范围空虚。第一个实现O(nlglg n)空间和O(lglg n)查询时间。这改进了Alstrup,Brodal,and Rauhe(FOCS'00)以前的结果,其空间复杂度为O(nlg ^eps n),查询时间复杂度为O(lglg n),或者其空间复杂度为O(nlglg n),查询时间复杂度为O(lg^2 lg n)。我们的第二个数据结构使用O(n)空间,并在O(lg^eps n)时间内回答查询。Nekrich(WADS'07)提出的最佳O(n)空间数据结构在O(lg n/lglg n)时间内回答查询。** 对于3-d正交范围报告,对于任何常数eps>0,我们获得空间O(n lg^{1+eps} n)和查询时间O(lglg n + k)。这改进了Afshani(ESA'08),Karpinski和Nekrich(COCOON'09)和Chan(SODA'11)的先前结果,空间复杂度为O(n lg^3 n),查询时间复杂度为O(lglg n + k),或者空间复杂度为O(n lg^{1+eps} n),查询时间复杂度为O(lg^2 lg n + k)。这意味着在3以上的所有恒定维度中正交范围报告的改进的界限。** 我们给…
2011-03-28 cs.CG cs.DS
Optimal Planar Range Skyline Reporting with Linear Space in External Memory
设P是R^2中的n个点的集合。给定一个矩形Q = [α_1,α_2] x [β_1,β_2],范围天际线查询返回P \cap Q中点的最大值。一个重要的变体是所谓的顶开查询,其中Q是一个3边矩形,其上边缘以y = \infty为基础(即β_2 = \infty)。这些查询在许多数据库应用程序中至关重要。在内部存储器中,广泛的研究致力于设计能够有效地回答这样的查询的数据结构。相比之下,目前还没有明确的了解他们的确切复杂性,在外部存储器。本文提出了几种线性大小的结构,以最佳的I/O成本回答上述查询。我们证明了一个top-open查询可以在O(log_B(n)+ k/B)I/O中解决,其中B是块大小,k是查询结果中的点数。当数据点位于一个U × U网格中,且U ≥ n时,查询代价为O(log log_B(U)+ k/B),当U = O(n)时,查询代价为O(1 + k/B).同样的效率也适用于3边查询,其中Q是右开矩形。然而,如果Q是一个左开或下开的3边矩形,问题的难度会增加。我们证明了在最坏的情况下,任何线性大小的结构必须执行Ω((n/B)^ \eps + k/B)I/O来解决这样的查询,其中\eps > 0可以是任意小的常数。事实上,左开和右开查询和一般(4边)查询一样困难,我们给出了一个线性大小的结构,查询时间为O((n/B)^ \eps + k/B)。有趣的是,这表明4侧范围天际…
2013-07-16 cs.DS
Simplex Range Searching Revisited: How to Shave Logs in Multi-Level Data Structures
我们重新讨论了计算几何中的单纯形范围搜索的经典问题和相关问题。我们提出了一个新的结果,提高了以前的界限由多个对数因子,是由使用多级数据结构。重点包括:$\bullet$对于一组$n$点在一个恒定的维度$d$,我们给数据结构与$O(n^d)$(或稍好)的空间,可以回答最佳的$O(\log n)$时间和最佳的$O(\log n + k)$时间,其中$k$表示的输出大小的单纯形范围计数查询。对于半群范围搜索,我们得到了$O(n^d\mathop{\rm polylog}n)$空间的$O(\log n)$查询时间。Matoušek在近三十年前提出的具有类似空间边界的先前数据结构具有$O(\log^{d+1}n)$或$O(\log^{d+1}n + k)$查询时间。$\bullet$对于一组$n$单形在一个恒定的维度$d$,我们给出了数据结构与$O(n)$空间,可以回答刺计数查询(计数包含一个查询点的单形的数量)在$O(n^{1-1/d})$时间,刺报告查询在$O(n^{1-1/d}+k)$时间。以前的数据结构在空间和查询时间方面有额外的$\log^d n$因子。对于二维$n$(可能相交)线段的集合,给出了一种$O(n)$空间的数据结构,该数据结构可以在$O(\sqrt{n})$时间内回答射线射击查询。这改进了Wang最近的数据结构[SoCG'20],具有$O(n\log n)$空间和$O(…
2022-10-20 cs.CG cs.DS
Path Query Data Structures in Practice
我们进行实验研究的数据结构,回答路径中位数,路径计数,并在加权树路径报告查询。这些查询问题推广了著名的范围中位数查询问题的数组,以及$2d$正交范围计数和报告问题的平面点集,树结构的数据。我们提出了最新的路径查询理论成果的实际实现。我们的数据结构,它使用树提取,重路径分解和小波树,实现在简洁和基于指针的形式。我们的简洁的数据结构被进一步专门化为普通或熵压缩。通过对大集合的实验,我们表明,简洁的数据结构的路径查询可能会提出一个可行的替代标准的基于指针的实现,在实际情况下。与通过显式遍历查询路径来计算答案的朴素方法相比,我们简洁的数据结构在路径中值查询中的速度要快几倍,并且在路径计数和路径报告查询中执行重复,同时空间效率要高几倍。我们的数据结构的基于普通指针的实现,需要比简单的多几倍的空间,产生$100$倍的速度。
2020-04-18 cs.DS
Range Quantile Queries: Another Virtue of Wavelet Trees
我们展示了如何使用平衡小波树作为一个数据结构,存储一个数字列表,并支持高效的{ \em范围分位数查询}。范围分位数查询获取子列表的排名和端点,并返回该子列表中具有该排名的数字。例如,如果秩是子列表长度的一半,则查询返回子列表的中位数。我们还展示了如何使用这些查询来支持空间高效的{ \em彩色范围报告}和{ \em文档列表}。
2010-04-07 cs.DS
A Linear-Size Logarithmic Stretch Path-Reporting Distance Oracle for General Graphs
2001年Thorup和Zwick设计了一个距离预言机,它给定一个$n$ -顶点无向图和一个参数$k$,其大小为$O(k n^{1+1/k})$ .在查询$(u,v)$时,它们的oracle构造$u$和$v$之间的$(2k-1)$ -近似路径$Π$。Thorup-Zwick的oracle的查询时间是$O(k)$,后来被Rumhik改进为$O(1)$。Thorup和Zwick预言的一个主要缺点是它的空间是$Ω(n \cdot \log n)$。Mendel和Naor设计了一个带有空间$O(n^{1+1/k})$和伸展$O(k)$的预言机,但他们的预言机只能报告距离估计而不能报告实际路径。在本文中,我们设计了一个路径报告距离预言机的大小$O(n^{1+1/k})$,拉伸$O(k)$和查询时间$O(n^ε)$,对于一个任意小的$ε> 0$。特别是,我们的oracle可以使用线性大小提供对数拉伸。我们的oracle的另一个变体具有大小$O(n \log\log n)$、多对数拉伸和查询时间$O(\log\log n)$。对于未加权图,我们设计了一个距离预言机与乘法拉伸$O(1)$,添加剂拉伸$O(β(k))$,对于一个功能$β(\cdot)$,空间$O(n^{1+1/k} \cdot β)$,和查询时间$O(n^ε)$,对于一个任意小的常数$ε>0$。在这些预言机中,乘法拉伸和大小之间的折…
2015-06-28 cs.DS
Internal Dictionary Matching
我们介绍的数据结构回答查询的出现模式从一个给定的字典$\mathcal{D}$在片段的一个给定的字符串$T$的长度$n$。字典是内部的,因为$\mathcal{D}$中的每个模式都是作为$T$的一个片段给出的。这样,$\mathcal{D}$占用的空间与模式$d=|\mathcal{D}|$的数量成比例,而不是它们的总长度,后者可能是$Θ(n\cdot d)$。特别是,我们考虑以下类型的查询:报告和计数的所有出现的模式从$\mathcal{D}$在一个片段$T[i..j]$和报告不同的模式从$\mathcal{D}$发生在$T[i..j]$。我们将展示如何构建,在$\mathcal{O}((n+d) \log^{\mathcal{O}(1)} n)$的时间,回答这些查询的时间$\mathcal{O}(\log^{\mathcal{O}(1)} n+|output|)$的数据结构。计数模式的情况更加复杂,需要将局部一致性解析与正交范围搜索相结合。另一方面,报告不同的模式,使用字符串中最大重复的结构。最后,我们提供了紧-次多项式因子-上界和下界的情况下,一个动态字典。
2019-09-25 cs.DS
Path and Ancestor Queries on Trees with Multidimensional Weight Vectors
我们考虑$n$节点上的序树$T$,每个节点分配一个$d$维权重向量$\pnt{w} \in \{1,2,\ldots,n\}^d,$,其中$d \in \mathbb{N}$是一个常数.我们研究路径查询的推广众所周知的{ \textit{orthogonal range queries} },其中一个维度是树拓扑结构,而不是线性顺序。由于在我们的定义中$d$只表示权重向量的维数而不考虑树的拓扑结构,因此具有$d$维权重向量的树中的路径查询推广了相应的$(d+1)$维正交范围查询。我们解决{ \textit{ancestor dominance reporting} }问题作为支配报告问题的直接推广,时间上的%$Ø((\lg^{d-1} n)/(\lg\lg n)^{d-2}+k)$时间上的$Ø(\lg^{d-1}{n}+k)$ %和$Ø(n(\lg n)^{d-1}/(\lg \lg n)^{d-2})$字的空间,以及$Ø(n\lg^{d-2}n)$字的空间,其中$k$是输出的大小,对于$d \geq 2.$,我们还实现了$Ø(n\lg^{d-2+\eps}{n})$字的空间的折衷,对于相同的问题,查询时间为$Ø((\lg^{d-1} n)/(\lg\lg n)^{d-2}+k),$,当$d \geq 3.$时我们在$Ø(n\lg^{d-1}{n})$中求解{ \textit{pa…
2019-10-02 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