To refer to this page use:
|Abstract:||Let S be a set of n intervals in ℝ, and let (S,+) be any commutative semigroup. We assign a weight ω(s) ε S to each interval in S. For a point x ε ℝ, let S(x) C S be the set of intervals that contain x. Given a point q ε ℝ, the stabbing-semigroup query asks for computing ΣsεS(q) ω(s). We propose a linear-size dynamic data structure, under the pointer-machine model, that answers queries in worst-case O(log n) time and supports both insertions and deletions of intervals in amortized O(log n) time. It is the first data structure that attains the optimal O(log n) bound for all three operations. Furthermore, our structure can easily be adapted to external memory, where we obtain a linear-size structure that answers queries and supports updates in O(log B n) I/Os, where B is the disk block size. For the restricted case of a nested family of intervals (either every pair of intervals is disjoint or one contains the other), we present a simpler solution based on dynamic trees.|
|Citation:||Agarwal, Pankaj K, Arge, Lars, Kaplan, Haim, Molad, Eyal, Tarjan, Robert E, Yi, Ke. (2012). An Optimal Dynamic Data Structure for Stabbing-Semigroup Queries. SIAM Journal on Computing, 41 (1), 104 - 127. doi:10.1137/10078791X|
|Pages:||104 - 127|
|Type of Material:||Journal Article|
|Journal/Proceeding Title:||SIAM Journal on Computing|
|Version:||Final published version. Article is made available in OAR by the publisher's permission or policy.|
Items in OAR@Princeton are protected by copyright, with all rights reserved, unless otherwise indicated.