Quad-K-d Trees

We introduce the Quad-K-d tree (or simply QK-d tree) a hierarchical and general purpose data structure for the storage of multidimensional points, which is a generalization of point quad trees and K-d trees at once. QK-d trees can be tuned by means of insertion heuristics to obtain trade-offs between their costs in time and space. We propose three such heuristics and show analytically and experimentally their competitive performance. On the one hand, our analytical results back the experimental outcomes and suggest that QK-d trees could constitute a general framework for the study of inherent properties of trees akin to K-d trees and quad trees. On the other hand, our experimental results indicate that the QK-d tree is a flexible data structure, which can be tailored to the resource requirements of a given application.

[1]  Oliver Günther,et al.  Multidimensional access methods , 1998, CSUR.

[2]  Sartaj Sahni,et al.  Handbook of Data Structures and Applications , 2004 .

[3]  Hanan Samet,et al.  Node Distribution in a PR Quadtree , 1990, SSD.

[4]  Rajeev Raman,et al.  Representing Trees of Higher Degree , 2005, Algorithmica.

[5]  Gaston H. Gonnet,et al.  The analysis of multidimensional searching in quad-trees , 1991, SODA '91.

[6]  Doron Rotem Clustered multiattribute hash files , 1989, PODS '89.

[7]  Hosam M. Mahmoud,et al.  Analysis of the Space of Search Trees under the Random Insertion Algorithm , 1989, J. Algorithms.

[8]  Luc Devroye,et al.  Squarish k-d Trees , 2000, SIAM J. Comput..

[9]  Donald E. Knuth,et al.  The art of computer programming, volume 3: (2nd ed.) sorting and searching , 1998 .

[10]  Helmut Prodinger,et al.  Partial match queries in relaxed multidimensional search trees , 2001, Algorithmica.

[11]  Philippe Flajolet,et al.  Analysis of KDT-Trees: KD-Trees Improved by Local Reogranisations , 1989, WADS.

[12]  Hanan Samet,et al.  The Design and Analysis of Spatial Data Structures , 1989 .

[13]  Jon Louis Bentley,et al.  Data Structures for Range Searching , 1979, CSUR.

[14]  Rajeev Raman,et al.  Succinct indexable dictionaries with applications to encoding k-ary trees and multisets , 2002, SODA '02.

[15]  Ketan Mulmuley Randomized multidimensional search trees: lazy balancing and dynamic shuffling , 1991, [1991] Proceedings 32nd Annual Symposium of Foundations of Computer Science.

[16]  Jehee Lee,et al.  Linkless Octree Using Multi‐Level Perfect Hashing , 2009, Comput. Graph. Forum.

[17]  Hsien-Kuei Hwang,et al.  Partial Match Queries in Random k-d Trees , 2006, SIAM J. Comput..

[18]  Michael T. Goodrich,et al.  Balanced aspect ratio trees: combining the advantages of k-d trees and octrees , 1999, SODA '99.

[19]  Santosh S. Vempala,et al.  Locality-preserving hashing in multidimensional spaces , 1997, STOC '97.

[20]  Salvador Roura,et al.  Improved master theorems for divide-and-conquer recurrences , 2001, JACM.

[21]  Luc Devroye,et al.  Analysis of range search for random k-d trees , 2001, Acta Informatica.

[22]  Conrado Martínez,et al.  Improving the performance of multidimensional search using fingers , 2005, JEAL.

[23]  Markku Tamminen,et al.  The extendible cell method for closest point problems , 1982, BIT.

[24]  Hanan Samet,et al.  Hierarchical Spatial Data Structures , 1989, SSD.

[25]  Murray Sherk Self-Adjusting k-ary Search Trees , 1995, J. Algorithms.

[26]  Ian H. Witten,et al.  Bonsai: A compact representation of trees , 1993, Softw. Pract. Exp..

[27]  Philippe Flajolet,et al.  Partial match retrieval of multidimensional data , 1986, JACM.

[28]  Conrado Martínez,et al.  On the average performance of orthogonal range search in multidimensional data structures , 2002, J. Algorithms.

[29]  Christos Faloutsos,et al.  The TV-tree: An index structure for high-dimensional data , 1994, The VLDB Journal.

[30]  David Eppstein,et al.  Skip Quadtrees: Dynamic Data Structures for Multidimensional Point Sets , 2008, Int. J. Comput. Geom. Appl..

[31]  Conrado Martínez,et al.  Updating relaxed K-d trees , 2009, TALG.

[32]  David M. Mount,et al.  A Self-adjusting Data Structure for Multidimensional Point Sets , 2012, ESA.

[33]  Vijay K. Vaishnavi Multidimensional Height-Balanced Trees , 1984, IEEE Transactions on Computers.

[34]  Jan van Leeuwen,et al.  Dynamic multi-dimensional data structures based on quad- and k—d trees , 1982, Acta Informatica.

[35]  Conrado Martínez,et al.  Randomized K-Dimensional Binary Search Trees , 1998, ISAAC.