On the Smoothed Heights of Trie and Patricia Index Trees

  • Weitian Tong
  • Randy Goebel
  • Guohui Lin
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8591)


Two of the most popular data structures for storing strings are the Trie and the Patricia index trees. Let H n denote the height of the Trie (the Patricia, respectively) on a set of n strings. It is well known that under the uniform distribution model on the strings, for Trie H n /logn → 2 and for Patricia H n /logn → 1, when n approaches infinity. Nevertheless, in the worst case, the height of the Trie on n strings is unbounded, and the height of the Patricia on n strings is in Θ(n). To better understand the practical performance of both the Trie and Patricia index trees, we investigate these two classical data structures in a smoothed analysis model. Given a set \({\cal S} = \{s_1, s_2, \ldots, s_n\}\) of n binary strings, we perturb the set by adding an i.i.d Bernoulli random noise to each bit of every string. We show that the resulting smoothed heights of Trie and Patricia trees are both Θ(logn).


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Chung, K.L., Erdös, P.: On the application of the Borel-Cantelli lemma. Transactions of the American Mathematical Society 72, 179–186 (1952)CrossRefzbMATHMathSciNetGoogle Scholar
  2. 2.
    Comtet, L.: Advanced Combinatorics: The Art of Finite and Infinite Expansions. Springer (1974)Google Scholar
  3. 3.
    Devroye, L.: A probabilistic analysis of the height of tries and of the complexity of triesort. Acta Informatica 21, 229–237 (1984)CrossRefzbMATHMathSciNetGoogle Scholar
  4. 4.
    Flajolet, P.: On the performance evaluation of extendible hashing and trie search. Acta Informatica 20, 345–369 (1983)CrossRefzbMATHMathSciNetGoogle Scholar
  5. 5.
    Flajolet, P., Steyaert, J.M.: A branching process arising in dynamic hashing, trie searching and polynomial factorization. In: Nielsen, M., Schmidt, E.M. (eds.) ICALP 1982. LNCS, vol. 140, pp. 239–251. Springer, Heidelberg (1982)CrossRefGoogle Scholar
  6. 6.
    Fredkin, E.: Trie memory. Communications of the ACM 3, 490–499 (1960)CrossRefGoogle Scholar
  7. 7.
    Knuth, D.E.: The Art of Computer Programming. Sorting and Searching, vol. III. Addison-Wesley (1973)Google Scholar
  8. 8.
    Mendelson, H.: Analysis of extendible hashing. IEEE Transactions on Software Engineering 8, 611–619 (1982)CrossRefzbMATHGoogle Scholar
  9. 9.
    Morrison, D.R.: Patricia — practical algorithm to retrieve information coded in alphanumeric. Journal of the ACM 15, 514–534 (1968)CrossRefGoogle Scholar
  10. 10.
    Nilsson, S., Tikkanen, M.: An experimental study of compression methods for dynamic tries. Algorithmica 33, 19–33 (2002)CrossRefzbMATHMathSciNetGoogle Scholar
  11. 11.
    Pittel, B.: Asymptotical growth of a class of random trees. Annals of Probability 13, 414–427 (1985)CrossRefzbMATHMathSciNetGoogle Scholar
  12. 12.
    Pittel, B.: Path in a random digital tree: limiting distributions. Advances in Applied Probability 18, 139–155 (1986)CrossRefzbMATHMathSciNetGoogle Scholar
  13. 13.
    Régnier, M.: On the average height of trees in digital searching and dynamic hashing. Information Processing Letters 13, 64–66 (1981)CrossRefzbMATHMathSciNetGoogle Scholar
  14. 14.
    Spielman, D.A., Teng, S.-H.: Smoothed analysis of algorithms: Why the simplex algorithm usually takes polynomial time. Journal of the ACM 51, 385–463 (2004)CrossRefzbMATHMathSciNetGoogle Scholar
  15. 15.
    Szpankowski, W.: Some results on V-ary asymmetric tries. Journal of Algorithms 9, 224–244 (1988)CrossRefzbMATHMathSciNetGoogle Scholar
  16. 16.
    Szpankowski, W.: Digital data structures and order statistics. In: Dehne, F., Santoro, N., Sack, J.-R. (eds.) WADS 1989. LNCS, vol. 382, pp. 206–217. Springer, Heidelberg (1989)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Weitian Tong
    • 1
  • Randy Goebel
    • 1
  • Guohui Lin
    • 1
  1. 1.Department of Computing ScienceUniversity of Alberta EdmontonAlbertaCanada

Personalised recommendations