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})}\).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Andersson, A., Nilsson, S.: Improved behaviour of tries by adaptive branching. Information Processing Letters 46, 295–300 (1993)
Aoe, J.: An efficient digital search algorithm by using a double array structure. IEEE Transactions on Software Engineering 15(9), 1066–1077 (1989)
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)
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)
Brent, R.P.: A linear algorithm for data compression. Australian Computer Journal 19(2), 64–68 (1987)
Devroye, L., Szpankowski, W.: Probabilistic behavior of asymmetric level compressed tries. Random Structures and Algorithms 27, 185–200 (2005)
Fredkin, E.: Trie memory. Communications of the ACM 3, 490–500 (1960)
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)
Hagerup, T.: Sorting and searching on the word ram. In: Proceedings of Symposium on Theory Aspects of Computer Science, pp. 366–398 (1998)
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)
Morrison, D.R.: PATRICIA - Practical Algorithm To Retrieve Information Coded In Alphanumeric. Journal of the ACM 15(4), 514–534 (1968)
Munro, J.I., Raman, V.: Succinct representation of balanced parentheses and static trees. SIAM Journal on Computing 31(3), 762–776 (2001)
Navarro, G.: Indexing text using the Ziv-Lempel trie. Journal of Discrete Algorithmcs (JDA) 2(1), 87–114 (2004)
Nilsson, S., Karlsson, G.: IP-address lookup using lc-tries. Journal on Selected Areas in Communications IEEE 17(6), 1083–1092 (1999)
Rodeh, M., Pratt, V.R., Even, S.: Linear algorithm for data compression via string matching. Journal of ACM 28(1), 16–24 (1981)
Sadakane, K., Grossi, R.: Squeezing Succinct Data Structures into Entropy Bounds. In: Proc. ACM-SIAM SODA, pp. 1230–1239. ACM Press, New York (2006)
Welch, T.A.: A technique for high-performance data compression. IEEE Computer, 8–19 (1984)
Willard, D.E.: Log-logarithmic worst case range queries are possible in space θ(n). Information Processing Letters 17, 81–84 (1983)
Willard, D.E.: New trie data structures which support very fast search operations. Journal of Computer and System Sciences 28, 379–394 (1984)
Ziv, J., Lempel, A.: Compression of individual sequences via variable-rate coding. IEEE Transactions on Information Theory IT-24(5), 530–536 (1978)
Author information
Authors and Affiliations
Editor information
Rights 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)