1 Abstract We analyse the average cost of half-space range reporting for the k-d search skip list. The k-d search skip list is a dynamic data structure requiring (kn) space for a set of n k-dimensional points. Under the assumption of uniform random distribution of points in k-d space, and a random query hyper-plane, our results show that for the 2-d case, the average running time for half-space range reporting using the k-d search skip list is O(p n + t), where t is the number of reported points. Algorithms for orthogonal range search and half space range search are extensively covered in the literature (e.g. 1, 3, 5, 11, 13]). For a survey of extensive literature on the subject the reader may want to consult 6] or 2]. As mentioned in 14], algorithms for range search traditionally fall into two categories: best worst case search time achievable by a linear space data structure, and minimum storage space to enable polylog (worst case) search time. The algorithm we analyse here falls into the former category. The distribution of multidimensional data is unlikely to occur in patterns leading to worst case range search cases. Expected case analysis of range search algorithms is often a good predictor of their performance (e.g. 4, 7, 10]). The k-d search skip list 9] is a linear space data structure (based on the 1-3 deterministic skip list of 8]) supporting k-d range search in O(kn) time, with dynamic update time of O(k logn). Figure 1 illustrates the eight rectangles of the internal nodes of a 2-d search skip list containing 14 points. Figure 2 shows a simpli-ed version of the 2-d search skip list arising from inserting the 14 points of Figure 1. Notice that each interior node contains the bounding box of all nodes in its down sublist. Here we analyse the expected time for half-space k-d range reporting under the assumption that both the input points and the query hyperplane are randomly and uniformly distributed. In addition, we change the structure of the k-d skip list in two ways, as follows: (1) we use a randomized skip list instead of the deterministic one used in 9], and (2) points are inserted into the list, not by x-coordinate, but by their position along a space-lling curve. These changes result in a simpler analysis and a better average performance. Other than these two changes, the data …
[1]
Mikhail J. Atallah,et al.
Algorithms and Theory of Computation Handbook
,
2009,
Chapman & Hall/CRC Applied Algorithms and Data Structures series.
[2]
Bradford G. Nickerson,et al.
On Dynamic k-d Half-Space Range Reporting
,
2000,
CCCG.
[3]
Pravin M. Vaidya.
Space-Time Trade-Offs for Orthogonal Range Queries
,
1989,
SIAM J. Comput..
[4]
Hermann A. Maurer,et al.
Efficient worst-case data structures for range searching
,
1978,
Acta Informatica.
[5]
Kurt Mehlhorn,et al.
Handbook of Theoretical Computer Science, Volume A: Algorithms and Complexity
,
1990
.
[6]
Bernard Chazelle,et al.
Lower bounds for orthogonal range searching: I. The reporting case
,
1990,
JACM.
[7]
R. Seidel, C.R. Aragon.
Randomized Search Trees
,
1996
.
[8]
Mario A. López,et al.
The Effect of Buffering on the Performance of R-Trees
,
2000,
IEEE Trans. Knowl. Data Eng..
[9]
J. Ian Munro,et al.
Deterministic skip lists
,
1992,
SODA '92.
[10]
Luc Devroye,et al.
Analysis of range search for random k-d trees
,
2001,
Acta Informatica.
[11]
Dan E. Willard,et al.
Polygon Retrieval
,
1982,
SIAM journal on computing (Print).