A History of Distribution-Sensitive Data Structures

Part of the Lecture Notes in Computer Science book series (LNCS, volume 8066)


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.


Priority Queue Query Time Temporal Distance Binary Search Tree Query Distribution 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Knuth, D.: Optimum binary search trees. Acta Informatica 1, 14–25 (1971)CrossRefzbMATHGoogle Scholar
  2. 2.
    Mehlhorn, K.: Nearly optimal binary search trees. Acta Inf. 5, 287–295 (1975)MathSciNetCrossRefzbMATHGoogle 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)MathSciNetCrossRefzbMATHGoogle 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)MathSciNetCrossRefzbMATHGoogle Scholar
  7. 7.
    Iacono, J.: Key-independent optimality. Algorithmica 42(1), 3–10 (2005)MathSciNetCrossRefzbMATHGoogle Scholar
  8. 8.
    Sleator, D.D., Tarjan, R.E.: Self-adjusting binary search trees. Journal of the ACM 32(3), 652–686 (1985)MathSciNetCrossRefzbMATHGoogle 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)MathSciNetCrossRefzbMATHGoogle 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)MathSciNetCrossRefzbMATHGoogle 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)MathSciNetCrossRefzbMATHGoogle 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)MathSciNetCrossRefzbMATHGoogle Scholar
  17. 17.
    Tarjan, R.: Sequential access in splay trees takes linear time. Combinatorica 5, 367–378 (1985)MathSciNetCrossRefzbMATHGoogle Scholar
  18. 18.
    Bose, P., Douïeb, K., Dujmović, V., Howat, J.: Layered working-set trees. Algorithmica 63(1), 476–489 (2012)MathSciNetCrossRefzbMATHGoogle 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)MathSciNetCrossRefzbMATHGoogle 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)MathSciNetCrossRefzbMATHGoogle Scholar
  26. 26.
    Dietz, P.F., Raman, R.: A constant update time finger search tree. Information Processing Letters 52(3), 147–154 (1994)CrossRefzbMATHGoogle 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)MathSciNetCrossRefzbMATHGoogle Scholar
  30. 30.
    Seidel, R., Aragon, C.R.: Randomized search trees. Algorithmica 16(4/5), 464–497 (1996)MathSciNetCrossRefzbMATHGoogle Scholar
  31. 31.
    Bagchi, A., Buchsbaum, A.L., Goodrich, M.T.: Biased skip lists. Algorithmica 42, 31–48 (2005)MathSciNetCrossRefzbMATHGoogle 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)MathSciNetCrossRefzbMATHGoogle Scholar
  34. 34.
    Wilber, R.: Lower bounds for accessing binary search trees with rotations. SIAM Journal on Computing 18(1), 56–67 (1989)MathSciNetCrossRefzbMATHGoogle 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)MathSciNetCrossRefzbMATHGoogle 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)MathSciNetCrossRefzbMATHGoogle 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)MathSciNetCrossRefzbMATHGoogle 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)MathSciNetCrossRefzbMATHGoogle 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)MathSciNetCrossRefzbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  1. 1.School of Computer ScienceCarleton UniversityCanada
  2. 2.School of ComputingQueen’s UniversityCanada

Personalised recommendations