Quad-K-d Trees

  • Nikolett Bereczky
  • Amalia Duch
  • Krisztián Németh
  • Salvador Roura
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8392)

Abstract

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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Ang, C.H., Samet, H.: Node Distribution in a PR Quadtree. In: Buchmann, A.P., Günther, O., Smith, T.R., Wang, Y.-F. (eds.) Design and Implementation of Large Spatial Databases. LNCS, vol. 409, pp. 233–252. Springer, Heidelberg (1989)CrossRefGoogle Scholar
  2. 2.
    Benoit, D., Munro, R., Raman, R.: Representing trees of higher degree. Algorithmica 43 (2005)Google Scholar
  3. 3.
    Bentley, J.L., Friedman, J.H.: Data structures for range searching. ACM Computing Surveys 11(4), 397–409 (1979)CrossRefGoogle Scholar
  4. 4.
    Chanzy, P., Devroye, L., Zamora-Cura, C.: Analysis of range search for random k-d trees. Acta Informatica 37, 355–383 (2001)CrossRefMATHMathSciNetGoogle Scholar
  5. 5.
    Chern, H.H., Hwang, H.K.: Partial match queries in random k-d trees. SIAM Journal on Computing 35(6), 1440–1466 (2006)CrossRefMATHMathSciNetGoogle Scholar
  6. 6.
    Choi, M.G., Ju, E., Chang, J.W., Lee, J., Kim, Y.J.: Linkless octree using multi-level perfect hashing. Comput. Graph. Forum 28(7), 1773–1780 (2009)CrossRefGoogle Scholar
  7. 7.
    Cunto, W., Lau, G., Flajolet, P.: Analysis of kdt-trees: kd-trees improved by local reorganisations. In: Dehne, F., Santoro, N., Sack, J.-R. (eds.) WADS 1989. LNCS, vol. 382, pp. 24–38. Springer, Heidelberg (1989)CrossRefGoogle Scholar
  8. 8.
    Darragh, J.J., Cleary, J.G., Witten, I.H.: Bonsai: A compact representation of trees. SOFTPREX: Software–Practice and Experience 23 (1993)Google Scholar
  9. 9.
    Devroye, L., Jabbour, J., Zamora-Cura, C.: Squarish k-d trees. SIAM Journal on Computing 30, 1678–1700 (2000)CrossRefMATHMathSciNetGoogle Scholar
  10. 10.
    Duch, A., Estivill-Castro, V., Martínez, C.: Randomized K-dimensional binary search trees. In: Chwa, K.-Y., Ibarra, O.H. (eds.) ISAAC 1998. LNCS, vol. 1533, pp. 199–209. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  11. 11.
    Duch, A., Martínez, C.: On the average performance of orthogonal range search in multidimensional data structures. Journal of Algorithms 44(1), 226–245 (2002)CrossRefMATHMathSciNetGoogle Scholar
  12. 12.
    Duch, A., Martínez, C.: Improving the performance of multidimensional search using fingers. ACM Journal of Experimental Algorithms - JEA 10 (2005)Google Scholar
  13. 13.
    Duch, A., Martínez, C.: Updating Relaxed K-d Trees. ACM Transactions on Algorithms 6(1) (2009)Google Scholar
  14. 14.
    Duncan, C., Goodrich, M., Kobourov, S.: Balanced Aspect Ratio Trees: Combining the Advantages of k-d Trees and Octrees. Journal of Algorithms 38, 303–333 (2001)CrossRefMATHMathSciNetGoogle Scholar
  15. 15.
    Eppstein, D., Goodrich, M., Sun, J.Z.: Skip Quadtrees: Dynamic Data Structures for Multidimensional Point Sets. Int. J. Comput. Geom. Appl. 18 (2008)Google Scholar
  16. 16.
    Flajolet, P., Puech, C.: Partial match retrieval of multidimensional data. Journal of the ACM 33(2), 371–407 (1986)CrossRefMathSciNetGoogle Scholar
  17. 17.
    Flajolet, P., Gonnet, G.H., Puech, C., Robson, J.M.: The Analysis of Multidimensional Searching in Quad-Trees. In: SODA, pp. 100–109 (1991)Google Scholar
  18. 18.
    Gaede, V., Günther, O.: Multidimensional access methods. ACM Computing Surveys 30(2), 170–231 (1998)CrossRefGoogle Scholar
  19. 19.
    Indyk, P., Motwani, R., Raghavan, P., Vempala, S.: Locality-preserving hashing in multidimensional spaces. In: STOC 1997 Proceedings of the Twenty-Ninth Annual ACM Symposium on Theory of Computing, pp. 618–625 (1997)Google Scholar
  20. 20.
    Knuth, D.E.: The Art of Computer Programming: Sorting and Searching, 2nd edn., vol. 3. Addison–Wesley (1998)Google Scholar
  21. 21.
    Lin, K.I., Jagadish, H., Faloutsos, C.: The TV-Tree: An Index Structure for High-Dimensional Data. Proc. VLDB Journal 3(4), 517–542 (1994)CrossRefGoogle Scholar
  22. 22.
    Mahmoud, H.M.: Evolution of Random Search Trees. Wiley-Interscience series in discrete mathematics and optimization (1991)Google Scholar
  23. 23.
    Mahmoud, H.M., Pittel, B.: Analysis of the Space of Search Trees Under the Random Insertion Algorithm. Journal of Algorithms 10, 52–75 (1989)CrossRefMATHMathSciNetGoogle Scholar
  24. 24.
    Martínez, C., Panholzer, A., Prodinger, H.: Partial match queries in relaxed multidimensional search trees. Algorithmica 29(1-2), 181–204 (2001)CrossRefMATHMathSciNetGoogle Scholar
  25. 25.
    Mehta, D.P., Sahni, S.: Handbook of Data Structures and Applications. Computer & Information Science Series. Chapman & Hall/CRC (2005)Google Scholar
  26. 26.
    Mulmuley, K.: Randomized Multidimensional Search Trees: Lazy Balancing and Dynamic Shuffling. In: FOCS: 32nd Annual Symposium on Foundations of Computer Science, pp. 180–196 (1991)Google Scholar
  27. 27.
    Overmars, M.H., van Leeuwen, J.: Dynamic Multi-dimensional Data Structures Based on Quad and K-d Trees. Acta Informatica 17(3), 267–285 (1982)CrossRefMATHMathSciNetGoogle Scholar
  28. 28.
    Park, E., Mount, D.M.: A Self-Adjusting Data Structure for Multidimensional Point Sets. In: Epstein, L., Ferragina, P. (eds.) ESA 2012. LNCS, vol. 7501, pp. 778–789. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  29. 29.
    Raman, R., Raman, V., Rao, S.S.: Succinct indexable dictionaries with applications to encoding k-ary trees and multisets. In: Proceedings of the 13th Annual ACM-SIAM Symposium on Discrete Mathematics (SODA 2002), pp. 233–242. ACM Press (2002)Google Scholar
  30. 30.
    Rotem, D.: Clustered multiattribute hash files. In: PODS 1989 Proceedings of the Eighth ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems, pp. 225–234 (1989)Google Scholar
  31. 31.
    Roura, S.: Improved master theorems for divide-and-conquer recurrences. J. ACM 48(2), 170–205 (2001)CrossRefMATHMathSciNetGoogle Scholar
  32. 32.
    Samet, H.: The Design and Analysis of Spatial Data Structures. Addison-Wesley (1990)Google Scholar
  33. 33.
    Sherk, M.: Self-Adjusting k-ary Search Trees. Journal of Algorithms 19(1), 25–44 (1995)CrossRefMATHMathSciNetGoogle Scholar
  34. 34.
    Tamminen, M.: The extendible cell method for closest point problems. BIT Numerical Mathematics 22, 27–41 (1982)CrossRefMATHMathSciNetGoogle Scholar
  35. 35.
    Vaishnavi, V.K.: Multidimensional Height-Balanced Trees. IEEE Transactions on Computers 33(4), 334–343 (1984)CrossRefMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2014

Authors and Affiliations

  • Nikolett Bereczky
    • 1
  • Amalia Duch
    • 2
  • Krisztián Németh
    • 1
  • Salvador Roura
    • 2
  1. 1.Department of Telecommunications and Media InformaticsBudapest University of Technology and EconomicsBudapestHungary
  2. 2.Departament de Llenguatges i Sistemes InformàticsUniversitat Politècnica de CatalunyaBarcelonaSpain

Personalised recommendations