Dynamic Orthogonal Range Searching on the RAM, Revisited
Dynamic Orthogonal Range Searching on the
RAM, Revisited∗
Timothy M. Chan1 and Konstantinos Tsakalidis2
1
Dept. of Computer Science, University of Illinois at Urbana-Champaign,
Urbana, IL, USA
Cheriton School of Computer Science, University of Waterloo, Waterloo,
Canada
2
Abstract
We study a longstanding problem in computational geometry:
2-d dynamic
orthogonal range
log n
reporting. We present a new data structure achieving O log log n + k optimal query time and
O log2/3+o(1) n update time (amortized) in the word RAM model, where n is the number of
data points and k is the output size. This is the first improvement
in over 10 years of Mortensen’s
7/8+ε
previous result [SIAM J. Comput., 2006], which has O log
n update time for an arbitrarily
small constant ε.
In the case of 3-sided queries, our update time reduces to O log1/2+ε n , improving Wilkin-
son’s previous bound [ESA 2014] of O log2/3+ε n .
1998 ACM Subject Classification F.2.2 Nonnumerical Algorithms and Problems
Keywords and phrases dynamic data structures, range searching, computational geometry
Digital Object Identifier 10.4230/LIPIcs.SoCG.2017.28
1
Introduction
Orthogonal range searching is one of the most well-studied and fundamental problems in
computational geometry: the goal is to design a data structure to store a set of n points so
that we can quickly report all points inside a query axis-aligned rectangle. In the “emptiness”
version of the problem, we just want to decide if the rectangle contains any point. (We will
not study the counting version of the problem here.)
The static 2-d problem has been extensively investigated [15, 6, 25, 13, 11, 22, 1, 21], with
the current best results in the word RAM model given by Chan, Larsen, and Pătraşcu [9].
In this paper, we are interested in the dynamic 2-d problem, allowing insertions and
deletions of points. A straightforward
dynamization of the
standard range tree [27] supports
queries in O log2 n + k time and updates in O log2 n time, where k denotes the number
of reported points (for the emptiness problem, we can take k = 0). Mehlhorn and Näher [17]
improved the query time to O (log n log log n + k) and the update time to O (log n log log n)
by dynamic fractional cascading.
∗
This work was done while the first author was at the University of Waterloo, and was partially supported
by an NSERC Discovery Grant.
© Timothy M. Chan and Konstantinos Tsakalidis;
licensed under Creative Commons License CC-BY
33rd International Symposium on Computational Geometry (SoCG 2017).
Editors: Boris Aronov and Matthew J. Katz; Article No. 28; pp. 28:1–28:13
Leibniz International Proceedings in Informatics
Schloss Dagstuhl – Leibniz-Zentrum für Informatik, Dagstuhl Publishing, Germany
28:2
Dynamic Orthogonal Range Searching on the RAM, Revisited
The first data structure to achieve logarithmic query and update (amortized) time was
presented by Mortensen [19].
In fact, heobtained sublogarithmic bounds in the word RAM
model: the query time is O logloglogn n + k and the amortized update time is O log7/8+ε n
where ε denotes an arbitrarily small positive constant.
On the lower bound side, Alstrup et al.[2] showed
that any data structure with tu update
n
time for 2-d range emptiness requires Ω log(tlog
query time in the cell-probe model.
u log n)
Thus, Mortensen’s query bound is optimal for any data structure with polylogarithmic
update time. However, it is conceivable that the update
time
could be improved further
while keeping the same query time. Indeed, the O log7/8+ε n update bound looks too
peculiar to be optimal, one would think.
Let us remark how intriguing this type of “fractional-power-of-log” bound is, which showed
up only on a few occasions in the literature. For example, Chan and Pătraşcu [10] gave a
dynamic data structure
of elements less than a given
for 1-d rank queries (counting number
value) with O
log n
log log n
√
query time and O log1/2+ε n update time. Chan and Pătraşcu
also obtained more log n-type results for various offline range counting problems. Another
example is Wilkinson’s recent paper [24]: he studied a special case of 2-d orthogonal
range
reporting for 2-sided and 3-sided rectangles and obtained a solution with O logloglogn n + k
amortized query time, O log1/2+ε n update time for the 2-sided case, and O log2/3+ε n
update time for 3-sided; the latter improves Mortensen’s O log5/6+ε n update bound for
3-sided [19]. He also showed that in the insertion-only and deletion-only settings, it is possible
to get fractional-power-of-log bounds for both the update and the query time. However,
he was unable to make progress for general 4-sided rectangles in the insertion-only and
deletion-only settings, let alone the fully dynamic setting.
New results. Our mainnew result is a fully dynamic data structure
for 2-d orthogonal
log n
range reporting with O log log n + k optimal query time and O log2/3+o(1) n update
time, greatly improving Mortensen’s O log7/8+ε n bound. In the 3-sided case, we obtain
O log1/2+ε n update time, improving Wilkinson’s O log2/3+ε n bound. (See Table 1 for
comparison.) Our update bounds seem to reach a natural limit with this type of approach.
√
In particular, it is not unreasonable to conjecture that the near- log n update bound for
the 3-sided case is close to optimal, considering prior “fractional-power-of-log” upper-bound
results in the literature (although there have been no known lower bounds of this type so
far).
Like previous methods, our bounds are amortized (this includes query time). Our results
are in the word-RAM model, under the standard assumption that the word size w is at least
log n bits (in fact, except for an initial predecessor search during each query/update, we only
need operations on (log n)-bit words). Even to researchers uncomfortable with sublogarithmic
algorithms on the word RAM, such techniques are still relevant. For example, Mortensen
d−1
log n
extended his data structure to d ≥ 3 dimensions and obtained O
+
k
query
log log n
time and O logd−9/8+ε n update time, even in the real-RAM model (where each word
can hold an input real number or a (log n)-bit number). Our result automatically leads to
improvements in higher dimensions as well.
T. M. Chan and K. Tsakalidis
28:3
Table 1 Dynamic planar orthogonal range reporting: previous and new results.
4-sided
Lueker and Willard [27]
Mehlhorn and Näher [17]
Mortensen [19]
New
3-sided
McCreight [16]
Willard [26]
Mortensen [19]
Wilkinson [24]
Wilkinson [24]
New
Update time
log2 n
log n log log n
log7/8+ε n
log2/3 n logO(1) log n
Query time
log2 n + k
log n log log n + k
log n
+k
log log n
log n
+k
log log n
log n
log n + k
log n
+k
log log n
log n
+k
log log n
log n + k
log n
+k
log log n
log n
+k
log log n
log n
log log n
5/6+ε
log
n
(log n log log n)2/3
log2/3+ε n
log1/2+ε n
Overview of techniques: Micro- and macro-structures. Our sol (...truncated)