\emph{longest common extension}(\emph{LCE})问题是预处理长度为$n$的给定字符串$w$,以便快速回答在任何两个给定位置开始的$w$后缀之间的最长公共前缀的长度。在本文中,我们提出了一个数据结构的$O(z τ^2 + \frac{n}τ)$字的空间,回答LCE查询在$O(1)$时间,并可以建立在$O(n \log σ)$时间,其中$1 \leq τ\leq \sqrt{n}$是一个参数,$z$是的Lempel-Ziv 77分解的$w$和$σ$是字母表的大小。这是\emph{encoding}数据结构,即,它在回答查询时不访问输入字符串$w$,因此$w$可以在预处理之后被删除。在这个主要结果的顶部,我们得到进一步的结果使用(变种)我们的LCE数据结构,其中包括以下内容:-对于高度重复的字符串的$zτ^2$长期占主导地位的$\frac{n}τ$,我们得到一个\emph{constant-time and sub-linear space} LCE查询数据结构。- 即使当输入字符串通过Lempel-Ziv 77因子分解不能很好地压缩时,我们仍然可以获得用于合适的$τ$和用于$σ\leq 2^{o(\log n)}$的\emph{constant-time and sub-linear space} LCE数据结构。- Bille等人[J. Discrete Algorithms,25:42-50,2014]和Kosolobov [CoRR,abs/1611.02891,2016]提出的LCE问题的时空权衡下界在某些情况下可以用我们的LCE数据结构“超越”。
英文摘要:
The \emph{longest common extension} (\emph{LCE}) problem is to preprocess a given string $w$ of length $n$ so that the length of the longest common prefix between suffixes of $w$ that start at any two given positions is answered quickly. In this paper, we present a data structure of $O(z τ^2 + \frac{n}τ)$ words of space which answers LCE queries in $O(1)$ time and can be built in $O(n \log σ)$ time, where $1 \leq τ\leq \sqrt{n}$ is a parameter, $z$ is the size of the Lempel-Ziv 77 factorization of $w$ and $σ$ is the alphabet size. This is an \emph{encoding} data structure, i.e., it does not access the input string $w$ when answering queries and thus $w$ can be deleted after preprocessing. On top of this main result, we obtain further results using (variants of) our LCE data structure, which include the following:
- For highly repetitive strings where the $zτ^2$ term is dominated by $\frac{n}τ$, we obtain a \emph{constant-time and sub-linear space} LCE query data structure.
- Even when the input string is not well compressible via Lempel-Ziv 77 factorization, we still can obtain a \emph{constant-time and sub-linear space} LCE data structure for suitable $τ$ and for $σ\leq 2^{o(\log n)}$.
- The time-space trade-off lower bounds for the LCE problem by Bille et al. [J. Discrete Algorithms, 25:42-50, 2014] and by Kosolobov [CoRR, abs/1611.02891, 2016] can be "surpassed" in some cases with our LCE data structure.
字符串中两个索引的最长公共扩展(LCE)是从这两个索引开始的最长相同子串的长度。LCE问题要求将字符串预处理为支持快速LCE查询的紧凑数据结构。在本文中,我们推广的LCE问题的树,并提出了一些应用LCE树尝试和XML数据库。给定一个大小为$n$的带标签和有根树$T$,目标是将$T$预处理成一个紧凑的数据结构,该结构支持$T$中的子路径和子树之间的以下LCE查询。假设$v_1$、$v_2$、$w_1$和$w_2$是$T$的节点,使得$w_1$和$w_2$分别是$v_1$和$v_2$的后代。\begin{itemize} \item $\LCEPP(v_1, w_1, v_2, w_2)$: (path-path $\LCE$) return the longest common prefix of the paths $v_1 \leadsto w_1$ and $v_2 \leadsto w_2$. \item $\LCEPT(v_1, w_1, v_2)$: (path-tree $\LCE$) return maximal path-path LCE of the path $v_1 \leadsto w_1$ and any path from $v_2$ to a descendant leaf. \item $\LCETT(v_1, v_2)$: (tree-tree $…
Near-Optimal and Efficient Encoding for Two-Dimensional Range Minimum Queries
Institute of Computer Science, University of Wrocław(弗罗茨瓦夫大学计算机科学研究所);Department of Computer Science, Norwegian University of Science and Technology(挪威科技大学计算机科学系)
我们考虑\emph{two-dimensional range maximum query (2D-RMQ)}问题:给定一个有序值的数组$A$,对其进行预处理,以便我们可以找到由(用户指定的)行范围和列范围定义的子矩阵中最小元素的位置。我们专注于确定2D-RMQ的\emph{effective}熵,即,需要多少比特来编码$A$,使得2D-RMQ查询可以被回答\emph{without}访问$A$。我们给紧的上限和下限的预期有效熵的情况下,当$A$包含独立的同分布的随机值,和新的上限和下限任意$A$,当$A$包含几行的情况下。后一结果改进了Brodal等人先前的上限和下限(欧空局,2010年)。在某些情况下,我们还给出了数据结构,其空间使用率接近有效熵,并快速回答2D-RMQ查询。
Quick Streaming Algorithms for Maximization of Monotone Submodular Functions in Linear Time
Florida State University(佛罗里达州立大学)
考虑基数约束$k$下基集大小为$n$的单调次模极大化问题.对于这个问题,我们介绍了第一个确定性算法的线性时间复杂度,这些算法是流算法。对于任何$c \ge 1$,我们的单遍算法在$\lceil n / c \rceil + c$ Oracle查询中获得恒定的比率。此外,我们提出了一个确定性的,多遍流算法,通过一个恒定的数量,达到接近线性查询和时间复杂度的最佳比例。我们证明了一个下界,这意味着没有常数因子近似存在使用$o(n)$查询,即使查询不可行集是允许的。实证分析表明,我们的算法需要更少的查询(通常大大低于$n$),但仍然实现更好的客观价值比目前的国家的最先进的算法,包括单通,多通,和非流算法。
Entropy Trees and Range-Minimum Queries In Optimal Average-Case Space
范围最小查询(RMQ)问题是一个基本的数据结构化任务,有许多应用。尽管已知具有最坏情况最优$2n+o(n)$空间位和恒定查询时间的简洁解决方案,但尚不清楚这种数据结构是否可以适应随机输入的减少熵(Davoodi et al. 2014)。我们构造了一个简洁的数据结构,最佳的$1.736n+o(n)$位的空间平均随机RMQ实例,解决这个问题。我们的解决方案依赖于一个压缩的数据结构的二叉树是独立的利益。它可以将随机插入生成的(静态)二叉搜索树存储在渐近最优的期望空间中,并在恒定时间内支持多个查询。使用子树的实例最优编码,我们进一步获得了二叉树的“超简洁”数据结构,它改进了Jansson,Sadakane和Sung(2012)的超简洁表示。
对于任何$ε\in (0,1)$,$(1+ε)$近似范围模式查询要求其在查询范围中的频率至多是比真实模式小的因子$(1+ε)$的元素的位置。针对这一问题,设计了一种支持$O(\lg(1/ε))$时间查询的$O(n/ε)$位数据结构.这是一个编码的数据结构,不需要访问输入序列,我们证明了空间成本是渐近最优的恒定$ε$。我们的解决方案改进了Greve等人(Cell Probe Lower Bounds and Approximations for Range Mode,ICALP'10)以前的最佳结果,通过将空间成本降低$\lg n$的因子,同时实现相同的查询时间。我们还设计了一个$O(n)$字的动态数据结构,回答查询在$O(\lg n /\lg\lg n)$时间,并支持插入和删除在$O(\lg n)$时间,任何常数$ε\in (0,1)$。这是关于动态近似范围模式的第一个结果;它也可以用于获得二维近似3边范围模式查询的第一个静态数据结构。我们还考虑了近似范围选择。对于任何$α\in (0,1/2)$,$α$ -近似范围选择查询要求其在查询范围中的排名在$[k - αs, k + αs]$中的元素的位置,其中$k$是由查询给出的排名,$s$是查询范围的大小。当$α$为常数时,我们设计了一种$O(n)$位编码数据结构,可以在常数时间内回答查询,并证明了这种空间代价是渐近最优的。Kriza…
我们考虑紧凑地表示具有$n$顶点和$m$边的给定无向或有向图的深度优先搜索(DFS)树的问题,同时在具有对数字大小的RAM中有效地支持各种与深度优先搜索相关的查询。我们研究了两个著名的模型:{ \it索引}和{ \it编码}模型。虽然使用额外空间的$O(n \lg n)$位\footnote{We use $\lg$ to denote logarithm to the base $2$.}可以在恒定时间内轻松支持大多数查询,但更具体地说,我们这里的目标是克服这个微不足道的$O(n \lg n)$位空间限制,但又不会在这些查询的运行时间上牺牲太多。在{ \it索引}模型中,我们解的空间上界涉及到数量$m$,因此,我们分别得到了稀疏图和稠密图的不同上界。在{ \it encoding}模型中,我们首先给出一个空间下界,其次是一个几乎最优的数据结构,具有极快的查询时间。我们的算法的核心是一个分区的DFS树连接的子树,和一个紧凑的方式来存储这些连接。最后,我们还将这些技术应用于最短路径结构、双连通性结构等的紧索引。