Skip to main content

Compressed Dynamic Tries with Applications to LZ-Compression in Sublinear Time and Space

  • Conference paper
FSTTCS 2007: Foundations of Software Technology and Theoretical Computer Science (FSTTCS 2007)

Abstract

The dynamic trie is a fundamental data structure which finds applications in many areas. This paper proposes a compressed version of the dynamic trie data structure. Our data-structure is not only space efficient, it also allows pattern searching in o(|P|) time and leaf insertion/deletion in o(logn) time, where |P| is the length of the pattern and n is the size of the trie. To demonstrate the usefulness of the new data structure, we apply it to the LZ-compression problem. For a string S of length s over an alphabet \(\cal A\) of size σ, the previously best known algorithms for computing the Ziv-Lempel encoding (lz78) of S either run in: (1) O(s) time and O(s logs) bits working space; or (2) O(s σ) time and O(s H k  + s logσ/ log σ s) bits working space, where H k is the k-order entropy of the text. No previous algorithm runs in sublinear time. Our new data structure implies a LZ-compression algorithm which runs in sublinear time and uses optimal working space. More precisely, the LZ-compression algorithm uses O(s (logσ + loglog σ s) / log σ s) bits working space and runs in \(O(s (\log \log s)^2 / (\log_{\sigma} s \log \log \log s))\) worst-case time, which is sublinear when \(\sigma = 2^{o(\log s \frac{\log \log \log s}{(\log \log s)^2})}\).

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Andersson, A., Nilsson, S.: Improved behaviour of tries by adaptive branching. Information Processing Letters 46, 295–300 (1993)

    Article  MathSciNet  MATH  Google Scholar 

  2. Aoe, J.: An efficient digital search algorithm by using a double array structure. IEEE Transactions on Software Engineering 15(9), 1066–1077 (1989)

    Article  Google Scholar 

  3. Arroyuelo, D., Navarro, G.: Space-efficient construction of LZ-index. In: Deng, X., Du, D.-Z. (eds.) ISAAC 2005. LNCS, vol. 3827, Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  4. Beame, P., Fich, F.E.: Optimal bounds for the predecessor problem. In: Proc. of the 31st Annual ACM Symposium on the Theory of Computing (STOC 1999), pp. 295–304 (1999)

    Google Scholar 

  5. Brent, R.P.: A linear algorithm for data compression. Australian Computer Journal 19(2), 64–68 (1987)

    MathSciNet  MATH  Google Scholar 

  6. Devroye, L., Szpankowski, W.: Probabilistic behavior of asymmetric level compressed tries. Random Structures and Algorithms 27, 185–200 (2005)

    Article  MathSciNet  MATH  Google Scholar 

  7. Fredkin, E.: Trie memory. Communications of the ACM 3, 490–500 (1960)

    Article  Google Scholar 

  8. Geary, R.F., Rahman, N., Raman, R., Raman, V.: A simple optimal representation for balanced parentheses. In: Sahinalp, S.C., Muthukrishnan, S.M., Dogrusoz, U. (eds.) CPM 2004. LNCS, vol. 3109, pp. 159–172. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  9. Hagerup, T.: Sorting and searching on the word ram. In: Proceedings of Symposium on Theory Aspects of Computer Science, pp. 366–398 (1998)

    Google Scholar 

  10. Hon, W.-K., Lam, T.-W., Sadakane, K., Sung, W.-K.: Constructing compressed suffix arrays with large alphabets. In: Ibaraki, T., Katoh, N., Ono, H. (eds.) ISAAC 2003. LNCS, vol. 2906, Springer, Heidelberg (2003)

    Google Scholar 

  11. Morrison, D.R.: PATRICIA - Practical Algorithm To Retrieve Information Coded In Alphanumeric. Journal of the ACM 15(4), 514–534 (1968)

    Article  MathSciNet  Google Scholar 

  12. Munro, J.I., Raman, V.: Succinct representation of balanced parentheses and static trees. SIAM Journal on Computing 31(3), 762–776 (2001)

    Article  MathSciNet  MATH  Google Scholar 

  13. Navarro, G.: Indexing text using the Ziv-Lempel trie. Journal of Discrete Algorithmcs (JDA) 2(1), 87–114 (2004)

    Article  MATH  Google Scholar 

  14. Nilsson, S., Karlsson, G.: IP-address lookup using lc-tries. Journal on Selected Areas in Communications IEEE 17(6), 1083–1092 (1999)

    Article  Google Scholar 

  15. Rodeh, M., Pratt, V.R., Even, S.: Linear algorithm for data compression via string matching. Journal of ACM 28(1), 16–24 (1981)

    Article  MathSciNet  MATH  Google Scholar 

  16. Sadakane, K., Grossi, R.: Squeezing Succinct Data Structures into Entropy Bounds. In: Proc. ACM-SIAM SODA, pp. 1230–1239. ACM Press, New York (2006)

    Google Scholar 

  17. Welch, T.A.: A technique for high-performance data compression. IEEE Computer, 8–19 (1984)

    Google Scholar 

  18. Willard, D.E.: Log-logarithmic worst case range queries are possible in space θ(n). Information Processing Letters 17, 81–84 (1983)

    Article  MathSciNet  MATH  Google Scholar 

  19. Willard, D.E.: New trie data structures which support very fast search operations. Journal of Computer and System Sciences 28, 379–394 (1984)

    Article  MathSciNet  MATH  Google Scholar 

  20. Ziv, J., Lempel, A.: Compression of individual sequences via variable-rate coding. IEEE Transactions on Information Theory IT-24(5), 530–536 (1978)

    Article  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

V. Arvind Sanjiva Prasad

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Jansson, J., Sadakane, K., Sung, WK. (2007). Compressed Dynamic Tries with Applications to LZ-Compression in Sublinear Time and Space. In: Arvind, V., Prasad, S. (eds) FSTTCS 2007: Foundations of Software Technology and Theoretical Computer Science. FSTTCS 2007. Lecture Notes in Computer Science, vol 4855. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-77050-3_35

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-77050-3_35

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-77049-7

  • Online ISBN: 978-3-540-77050-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics