Sampled Longest Common Prefix Array

  • Jouni Sirén
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6129)


When augmented with the longest common prefix (LCP) array and some other structures, the suffix array can solve many string processing problems in optimal time and space. A compressed representation of the LCP array is also one of the main building blocks in many compressed suffix tree proposals. In this paper, we describe a new compressed LCP representation: the sampled LCP array. We show that when used with a compressed suffix array (CSA), the sampled LCP array often offers better time/space trade-offs than the existing alternatives. We also show how to construct the compressed representations of the LCP array directly from a CSA.


Extra Sample Bruijn Sequence Text Order Empirical Entropy Prefix Array 
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.
    Abouelhoda, M.I., Kurtz, S., Ohlebusch, E.: Replacing suffix trees with enhanced suffix arrays. Journal on Discrete Algorithms 2(1), 53–86 (2004)zbMATHCrossRefMathSciNetGoogle Scholar
  2. 2.
    Brisaboa, N.R., Ladra, S., Navarro, G.: Directly addressable variable-length codes. In: Hyyro, H. (ed.) SPIRE 2009. LNCS, vol. 5721, pp. 122–130. Springer, Heidelberg (2009)Google Scholar
  3. 3.
    Burrows, M., Wheeler, D.: A block sorting lossless data compression algorithm. Technical Report 124, Digital Equipment Corporation (1994)Google Scholar
  4. 4.
    Cánovas, R., Navarro, G.: Practical compressed suffix trees. In: Festa, P. (ed.) SEA 2010. LNCS, vol. 6049, pp. 94–105. Springer, Heidelberg (2010)Google Scholar
  5. 5.
    Elias, P.: Universal codeword sets and representations of the integers. IEEE Transactions on Information Theory 21(2), 194–203 (1975)zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Fayolle, J., Ward, M.D.: Analysis of the average depth in a suffix tree under a Markov model. In: Proc. 2005 International Conference on Analysis of Algorithms, DMTCS Proceedings, vol. AD, pp. 95–104. DMTCS (2005)Google Scholar
  7. 7.
    Ferragina, P., González, R., Navarro, G., Venturini, R.: Compressed text indexes: From theory to practice. Journal of Experimental Algorithms 13, 1.12 (2009)Google Scholar
  8. 8.
    Ferragina, P., Manzini, G.: Indexing compressed text. Journal of the ACM 52(4), 552–581 (2005)CrossRefMathSciNetGoogle Scholar
  9. 9.
    Ferragina, P., Venturini, R.: A simple storage scheme for strings achieving entropy bounds. In: SODA 2007, pp. 690–696. SIAM, Philadelphia (2007)Google Scholar
  10. 10.
    Fischer, J.: Wee LCP. arXiv:0910.3123v1 [cs.DS] (2009)Google Scholar
  11. 11.
    Fischer, J., Mäkinen, V., Navarro, G.: Faster entropy-bounded compressed suffix trees. Theoretical Computer Science 410(51), 5354–5364 (2009)zbMATHCrossRefMathSciNetGoogle Scholar
  12. 12.
    Grossi, R., Vitter, J.S.: Compressed suffix arrays and suffix trees with applications to text indexing and string matching. SIAM Journal on Computing 35(2), 378–407 (2005)zbMATHCrossRefMathSciNetGoogle Scholar
  13. 13.
    Gupta, A., Hon, W.-K., Shah, R., Vitter, J.S.: Compressed data structures: dictionaries and data-aware measures. Theoretical Computer Science 387(3), 313–331 (2007)zbMATHMathSciNetGoogle Scholar
  14. 14.
    Kärkkäinen, J., Manzini, G., Puglisi, S.: Permuted longest-common-prefix array. In: Kucherov, G., Ukkonen, E. (eds.) CPM 2009. LNCS, vol. 5577, pp. 181–192. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  15. 15.
    Kasai, T., Lee, G., Arimura, H., Arikawa, S., Park, K.: Linear-time longest-common-prefix computation in suffix arrays and its applications. In: Amir, A., Landau, G.M. (eds.) CPM 2001. LNCS, vol. 2089, pp. 181–192. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  16. 16.
    Khmelev, D.: Program lcp version 0.1.9 (2004),
  17. 17.
    Kurtz, S.: Reducing the space requirement of suffix trees. Software: Practice and Experience 29(13), 1149–1171 (1999)CrossRefGoogle Scholar
  18. 18.
    Mäkinen, V., Navarro, G., Sirén, J., Välimäki, N.: Storage and retrieval of individual genomes. In: Batzoglou, S. (ed.) RECOMB 2009. LNCS, vol. 5541, pp. 121–137. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  19. 19.
    Navarro, G., Mäkinen, V.: Compressed full-text indexes. ACM Computing Surveys 39(1), 2 (2007)CrossRefGoogle Scholar
  20. 20.
    Raman, R., Raman, V., Rao, S.S.: Succinct indexable dictionaries with applications to encoding k-ary trees and multisets. In: SODA 2002, pp. 233–242. SIAM, Philadelphia (2002)Google Scholar
  21. 21.
    Russo, L., Navarro, G., Oliveira, A.: Fully-compressed suffix trees. In: Laber, E.S., Bornstein, C., Nogueira, L.T., Faria, L. (eds.) LATIN 2008. LNCS, vol. 4957, pp. 362–373. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  22. 22.
    Sadakane, K.: Compressed suffix trees with full functionality. Theory of Computing Systems 41(4), 589–607 (2007)zbMATHCrossRefMathSciNetGoogle Scholar
  23. 23.
    Sirén, J.: Compressed suffix arrays for massive data. In: Hyyro, H. (ed.) SPIRE 2009. LNCS, vol. 5721, pp. 63–74. Springer, Heidelberg (2009)Google Scholar
  24. 24.
    Sirén, J.: Sampled longest common prefix array. arXiv:1001.2101v2 [cs.DS] (2010)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Jouni Sirén
    • 1
  1. 1.Department of Computer ScienceUniversity of HelsinkiFinland

Personalised recommendations