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

加快速度,减少浪费:降低全索引词典的冗余度

More Haste, Less Waste: Lowering the Redundancy in Fully Indexable Dictionaries

Roberto Grossi, Alessio Orlandi, Rajeev Raman, S. Srinivasa Rao

摘要:

我们考虑以压缩格式表示具有$n$ 1的$m$位的位向量$S$的问题,支持以下操作,其中$b \in \{0, 1 \}$:$rank_b(S,i)$返回位$b$在前缀$S[1..i]$中出现的次数; $select_b(S,i)$返回位$b$在$S$中第$i$次出现的位置。这种数据结构被称为\emph{fully indexable dictionary (FID)} [Raman等人,2007年],并且至少与前任数据结构一样强大。我们的重点是在\textsc{ram}模型上的空间有效的FID,具有字大小$Θ(\lg m)$和所有操作的恒定时间,因此时间成本与输入大小无关。给定要编码的位串$S$,具有长度$m$并且包含$n$ 1,需要存储的最小信息量是$B(n,m) = \lceil \log {{m}\choose{n}} \rceil$。在[Patrascu,2008]中给出了为$S$构建FID的最新技术,使用$B(m,n)+O(m / ((\log m/ t) ^t)) + O(m^{3/4}) $位来支持$O(t)$时间中的操作。在这里,我们提出了一个参数化的数据结构,表现出时间/空间的权衡,这样,对于任何实常数$0 < δ\leq 1/2$,$0 < \eps \leq 1$,和整数$s > 0$,它使用\[ B(n,m) + O(n^{1+δ} + n (\frac{m}{n^s})^\eps) \]位,并执行所有的操作在时间$O(sδ^{-1} + \eps^{-1})$。改进是双重的:我们的冗余可以参数化地降低,并且固定$s = O(1)$,对于足够大的$m$,我们得到其空间为$B(n,m) + O(m^\eps/\poly{n})$比特的恒定时间FID。这是一个显着的改进相比,以前的边界的一般情况。

英文摘要:

We consider the problem of representing, in a compressed format, a bit-vector $S$ of $m$ bits with $n$ 1s, supporting the following operations, where $b \in \{0, 1 \}$: $rank_b(S,i)$ returns the number of occurrences of bit $b$ in the prefix $S[1..i]$; $select_b(S,i)$ returns the position of the $i$th occurrence of bit $b$ in $S$. Such a data structure is called \emph{fully indexable dictionary (FID)} [Raman et al.,2007], and is at least as powerful as predecessor data structures. Our focus is on space-efficient FIDs on the \textsc{ram} model with word size $Θ(\lg m)$ and constant time for all operations, so that the time cost is independent of the input size. Given the bitstring $S$ to be encoded, having length $m$ and containing $n$ ones, the minimal amount of information that needs to be stored is $B(n,m) = \lceil \log {{m}\choose{n}} \rceil$. The state of the art in building a FID for $S$ is given in [Patrascu,2008] using $B(m,n)+O(m / ((\log m/ t) ^t)) + O(m^{3/4}) $ bits, to support the operations in $O(t)$ time. Here, we propose a parametric data structure exhibiting a time/space trade-off such that, for any real constants $0 < δ\leq 1/2$, $0 < \eps \leq 1$, and integer $s > 0$, it uses \[ B(n,m) + O(n^{1+δ} + n (\frac{m}{n^s})^\eps) \] bits and performs all the operations in time $O(sδ^{-1} + \eps^{-1})$. The improvement is twofold: our redundancy can be lowered parametrically and, fixing $s = O(1)$, we get a constant-time FID whose space is $B(n,m) + O(m^\eps/\poly{n})$ bits, for sufficiently large $m$. This is a significant improvement compared to the previous bounds for the general case.

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

↑