A History of Distribution-Sensitive Data Structures

  • Prosenjit Bose
  • John Howat
  • Pat Morin
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8066)

Abstract

Distribution-sensitive data structures attempt to exploit patterns in query distributions in order to allow many sequences of queries execute faster than in traditional data structures. In this paper, we survey the history of such data structures, outline open problems in the area, and offer some new results.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Knuth, D.: Optimum binary search trees. Acta Informatica 1, 14–25 (1971)CrossRefMATHGoogle Scholar
  2. 2.
    Mehlhorn, K.: Nearly optimal binary search trees. Acta Inf. 5, 287–295 (1975)MathSciNetCrossRefMATHGoogle Scholar
  3. 3.
    Mehlhorn, K.: A best possible bound for the weighted path length of binary search trees. SIAM J. Comput. 6(2), 235–239 (1977)MathSciNetCrossRefMATHGoogle Scholar
  4. 4.
    Bayer, P.: Improved bounds on the cost of optimal and balanced binary search trees. Master’s thesis, MIT (1975)Google Scholar
  5. 5.
    Fredman, M.L.: Two applications of a probabilistic search technique: Sorting x + y and building balanced search trees. In: STOC, pp. 240–244 (1975)Google Scholar
  6. 6.
    Shannon, C.: A mathematical theory of communication. Bell Systems Technical Journal 27, 379–423, 623–565 (1948)MathSciNetCrossRefMATHGoogle Scholar
  7. 7.
    Iacono, J.: Key-independent optimality. Algorithmica 42(1), 3–10 (2005)MathSciNetCrossRefMATHGoogle Scholar
  8. 8.
    Sleator, D.D., Tarjan, R.E.: Self-adjusting binary search trees. Journal of the ACM 32(3), 652–686 (1985)MathSciNetCrossRefMATHGoogle Scholar
  9. 9.
    Sleator, D.D., Tarjan, R.E.: Amortized efficiency of list update and paging rules. Communications of the ACM 28(2), 202–208 (1985)MathSciNetCrossRefGoogle Scholar
  10. 10.
    Iacono, J.: Improved upper bounds for pairing heaps. In: Halldórsson, M.M. (ed.) SWAT 2000. LNCS, vol. 1851, pp. 32–45. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  11. 11.
    Bose, P., Douïeb, K., Langerman, S.: Dynamic optimality for skip lists and B-trees. In: SODA 2008: Proceedings of the 19th Annual ACM-SIAM Symposium on Discrete Algorithms, pp. 1106–1114 (2008)Google Scholar
  12. 12.
    Iacono, J., Langerman, S.: Queaps. Algorithmica 42(1), 49–56 (2005)MathSciNetCrossRefMATHGoogle Scholar
  13. 13.
    Iacono, J.: Distribution Sensitive Data Structures. PhD thesis, Rutgers, The State University of New Jersey (2001)Google Scholar
  14. 14.
    Bădoiu, M., Cole, R., Demaine, E.D., Iacono, J.: A unified access bound on comparison-based dynamic dictionaries. Theoretical Computer Science 382(2), 86–96 (2007)MathSciNetCrossRefMATHGoogle Scholar
  15. 15.
    Cole, R.: On the dynamic finger conjecture for splay trees. Part II: The proof. SIAM Journal on Computing 30(1), 44–85 (2000)MathSciNetCrossRefMATHGoogle Scholar
  16. 16.
    Cole, R., Mishra, B., Schmidt, J., Siegel, A.: On the dynamic finger conjecture for splay trees. Part I: Splay Sorting logn-Block Sequences. SIAM Journal on Computing 30(1), 1–43 (2000)MathSciNetCrossRefMATHGoogle Scholar
  17. 17.
    Tarjan, R.: Sequential access in splay trees takes linear time. Combinatorica 5, 367–378 (1985)MathSciNetCrossRefMATHGoogle Scholar
  18. 18.
    Bose, P., Douïeb, K., Dujmović, V., Howat, J.: Layered working-set trees. Algorithmica 63(1), 476–489 (2012)MathSciNetCrossRefMATHGoogle Scholar
  19. 19.
    Derryberry, J.C.: Adapative Binary Search Trees. PhD thesis, Carnegie Mellon University (2009)Google Scholar
  20. 20.
    Derryberry, J.C., Sleator, D.D.: Skip-splay: Toward achieving the unified bound in the BST model. In: Dehne, F., Gavrilova, M., Sack, J.-R., Tóth, C.D. (eds.) WADS 2009. LNCS, vol. 5664, pp. 194–205. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  21. 21.
    Bose, P., Douïeb, K., Dujmović, V., Fagerberg, R.: An o(log log n)-competitive binary search tree with optimal worst-case access times. In: Kaplan, H. (ed.) SWAT 2010. LNCS, vol. 6139, pp. 38–49. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  22. 22.
    Demaine, E.D., Harmon, D., Iacono, J., Pǎtraşcu, M.: Dynamic optimality—almost. SIAM Journal on Computing 37(1), 240–251 (2007)MathSciNetCrossRefMATHGoogle Scholar
  23. 23.
    Wang, C.C., Derryberry, J., Sleator, D.D.: O(loglogn)-competitive dynamic binary search trees. In: SODA 2006: Proceedings of the 17th Annual ACM-SIAM Symposium on Discrete Algorithms, pp. 374–383 (2006)Google Scholar
  24. 24.
    Andersson, A.A., Thorup, M.: Dynamic ordered sets with exponential search trees. Journal of the ACM 54(3) (2007)Google Scholar
  25. 25.
    Brodal, G.S., Lagogiannis, G., Makris, C., Tsakalidis, A., Tsichlas, K.: Optimal finger search trees in the pointer machine. Journal of Computer and System Sciences 67(2), 381–418 (2003)MathSciNetCrossRefMATHGoogle Scholar
  26. 26.
    Dietz, P.F., Raman, R.: A constant update time finger search tree. Information Processing Letters 52(3), 147–154 (1994)CrossRefMATHGoogle Scholar
  27. 27.
    Pugh, W.: Skip lists: a probabilistic alternative to balanced trees. Communications of the ACM 33(6), 668–676 (1990)CrossRefGoogle Scholar
  28. 28.
    Kaporis, A.C., Makris, C., Sioutas, S., Tsakalidis, A., Tsichlas, K., Zaroliagis, C.: Improved bounds for finger search on a RAM. In: Di Battista, G., Zwick, U. (eds.) ESA 2003. LNCS, vol. 2832, pp. 325–336. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  29. 29.
    Bent, S.W., Sleator, D.D., Tarjan, R.E.: Biased search trees. SIAM Journal on Computing 14, 545–568 (1985)MathSciNetCrossRefMATHGoogle Scholar
  30. 30.
    Seidel, R., Aragon, C.R.: Randomized search trees. Algorithmica 16(4/5), 464–497 (1996)MathSciNetCrossRefMATHGoogle Scholar
  31. 31.
    Bagchi, A., Buchsbaum, A.L., Goodrich, M.T.: Biased skip lists. Algorithmica 42, 31–48 (2005)MathSciNetCrossRefMATHGoogle Scholar
  32. 32.
    Johnson, D.B.: A priority queue in which initialization and queue operations take O(loglogD) time. Theory of Computing Systems 15(1), 295–309 (1981)Google Scholar
  33. 33.
    Elmasry, A.: A priority queue with the working-set property. International Journal of Foundations of Computer Science 17(6), 1455–1465 (2006)MathSciNetCrossRefMATHGoogle Scholar
  34. 34.
    Wilber, R.: Lower bounds for accessing binary search trees with rotations. SIAM Journal on Computing 18(1), 56–67 (1989)MathSciNetCrossRefMATHGoogle Scholar
  35. 35.
    Brodal, G.S., Makris, C., Sioutas, S., Tsakalidis, A., Tsichlas, K.: Optimal solutions for the temporal precedence problem. Algorithmica 33(4), 494–510 (2002)MathSciNetCrossRefMATHGoogle Scholar
  36. 36.
    Belazzougui, D., Kaporis, A., Spirakis, P.: Random input helps searching predecessors. arXiv:1104.4353 (2011)Google Scholar
  37. 37.
    Demaine, E.D., Iacono, J., Langerman, S.: Proximate point searching. Computational Geometry: Theory and Applications 28(1), 29–40 (2004)MathSciNetCrossRefMATHGoogle Scholar
  38. 38.
    Arya, S., Malamatos, T., Mount, D.M., Wong, K.C.: Optimal expected-case planar point location. SIAM Journal on Computing 37(2), 584–610 (2007)MathSciNetCrossRefMATHGoogle Scholar
  39. 39.
    Colette, S., Dujmović, V., Iacono, J., Langerman, S., Morin, P.: Distribution-sensitive point location in convex subdivisions. In: SODA 2008: Proceedings of the 19th Annual ACM-SIAM Symposium on Discrete Algorithms, pp. 912–921 (2008)Google Scholar
  40. 40.
    Iacono, J.: A static optimality transformation with applications to planar point location. arXiv:1104.5597 (2011)Google Scholar
  41. 41.
    Iacono, J., Langerman, S.: Proximate planar point location. In: SoCG 2003: Proceedings of the 19th Annual ACM Symposium on Computational Geometry, pp. 220–226 (2003)Google Scholar
  42. 42.
    Derryberry, J., Sheehy, D., Woo, M., Sleator, D.D.: Achieving spatial adaptivity while finding approximate nearest neighbors. In: CCCG 2008: Proceedings of the 20th Annual Canadian Conference on Computational Geometry, pp. 163–166 (2008)Google Scholar
  43. 43.
    Dujmović, V., Howat, J., Morin, P.: Biased range trees. In: SODA 2009: Proceedings of the 20th Annual ACM-SIAM Symposium on Discrete Algorithms, pp. 486–495 (2009)Google Scholar
  44. 44.
    Afshani, P., Barbay, J., Chan, T.M.: Instance-optimal geometric algorithms. In: FOCS 2009: Proceedings of the 50th Annual IEEE Symposium on Foundations of Computer Science, pp. 129–138 (2009)Google Scholar
  45. 45.
    Elmasry, A., Farzan, A., Iacono, J.: A unifying property for distribution-sensitive priority queues. In: Iliopoulos, C.S., Smyth, W.F. (eds.) IWOCA 2011. LNCS, vol. 7056, pp. 209–222. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  46. 46.
    Adelson-Velskii, G., Landis, E.: An algorithm for the organization of information. Soviet Math. Doklady 3, 1259–1263 (1962)Google Scholar
  47. 47.
    Willard, D.E.: Log-logarithmic worst-case range queries are possible in space Θ(N). Information Processing Letters 17(2), 81–84 (1983)MathSciNetCrossRefMATHGoogle Scholar
  48. 48.
    Beame, P., Fich, F.E.: Optimal bounds for the predecessor problem and related problems. Journal of Computer and System Sciences 65(1), 38–72 (2002)MathSciNetCrossRefMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Prosenjit Bose
    • 1
  • John Howat
    • 2
  • Pat Morin
    • 1
  1. 1.School of Computer ScienceCarleton UniversityCanada
  2. 2.School of ComputingQueen’s UniversityCanada

Personalised recommendations