中文

Binary Indexed Tree 查询操作的常数优化

数据结构与算法 2016-12-30 v1

摘要

有几种数据结构可以高效地计算数组的前缀和,同时处理数组上的点更新,例如 Segment Tree 和 Binary Indexed Tree (BIT)。这两种数据结构都可以在 O(logn)O(\log{n}) 时间内处理这两个操作(查询和更新)。在本文中,我们提出了一种类似于 BIT 但具有更小常数的数据结构。为此,我们使用了 Zeckendorf 定理,即 Fibonacci 数列的一个性质。新数据结构实现了相同的 O(logn)O(\log{n}) 复杂度,但在最坏情况下,其查询操作需要约 logϕ2n\log_{\phi^{2}} n 次计算,而 BIT 查询操作需要 log2n\log_{2} n 次计算。

关键词

引用

@article{arxiv.1612.09083,
  title  = {A Constant Optimization of the Binary Indexed Tree Query Operation},
  author = {Anubhav Baweja},
  journal= {arXiv preprint arXiv:1612.09083},
  year   = {2016}
}

备注

7 pages, 2 figures, 2 graphs, 4 algorithms