Skip to main content

LPF Computation Revisited

  • Conference paper
Combinatorial Algorithms (IWOCA 2009)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 5874))

Included in the following conference series:

Abstract

We present efficient algorithms for storing past segments of a text. They are computed using two previously computed read-only arrays (SUF and LCP) composing the Suffix Array of the text. They compute the maximal length of the previous factor (subword) occurring at each position of the text in a table called LPF. This notion is central both in many conservative text compression techniques and in the most efficient algorithms for detecting motifs and repetitions occurring in a text.

The main results are: a linear-time algorithm that computes explicitly the permutation that transforms the LCP table into the LPF table; a time-space optimal computation of the LPF table; and an O(nlogn) strong in-place computation of the LPF table.

Research supported in part by the Royal Society, UK.

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. Berstel, J., Savelli, A.: Crochemore factorization of Sturmian and other infinite words. In: Královič, R., Urzyczyn, P. (eds.) MFCS 2006. LNCS, vol. 4162, pp. 157–166. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  2. Crochemore, M.: Transducers and repetitions. Theoretical Computer Science 45(1), 63–86 (1986)

    Article  MATH  MathSciNet  Google Scholar 

  3. Crochemore, M., Hancart, C., Lecroq, T.: Algorithms on Strings, 392 p. Cambridge University Press, Cambridge (2007)

    Google Scholar 

  4. Crochemore, M., Ilie, L.: Computing Longest Previous Factor in linear time and applications. Inf. Process. Lett. 106(2), 75–80 (2008)

    MATH  MathSciNet  Google Scholar 

  5. Crochemore, M., Ilie, L., Smyth, W.F.: A simple algorithm for computing the Lempel-Ziv factorization. In: Storer, J.A., Marcellin, M.W. (eds.) 18th Data Compression Conference, pp. 482–488. IEEE Computer Society, Los Alamitos (2008)

    Google Scholar 

  6. Crochemore, M., Rytter, W.: Jewels of Stringology, 310 p. World Scientific Publishing, Hong-Kong (2002)

    Google Scholar 

  7. Franek, F., Holub, J., Smyth, W.F., Xiao, X.: Computing quasi suffix arrays. Journal of Automata, Languages and Combinatorics 8(4), 593–606 (2003)

    MATH  MathSciNet  Google Scholar 

  8. Nong, G., Zhang, S., Chan, W.H.: Linear Time Suffix Array Construction Using D-Critical Substrings. In: Kucherov, G., Ukkonen, E. (eds.) Combinatorial Pattern Matching. LNCS, vol. 5577, pp. 54–67. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  9. Gusfield, D.: Algorithms on Strings, Trees and Sequences: Computer Science and Computational Biology, 534 p. Cambridge University Press, Cambridge (1997)

    Google Scholar 

  10. Kärkkäinen, J., Sanders, P.: Simple linear work suffix array construction. In: Baeten, J.C.M., Lenstra, J.K., Parrow, J., Woeginger, G.J. (eds.) ICALP 2003. LNCS, vol. 2719, pp. 943–955. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  11. 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)

    Chapter  Google Scholar 

  12. Kim, D.K., Sim, J.S., Park, H., Park, K.: Linear-time construction of suffix arrays. In: Baeza-Yates, R., Chávez, E., Crochemore, M. (eds.) CPM 2003. LNCS, vol. 2676, pp. 186–199. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  13. Ko, P., Aluru, S.: Space efficient linear time construction of suffix arrays. In: Baeza-Yates, R., Chávez, E., Crochemore, M. (eds.) CPM 2003. LNCS, vol. 2676, pp. 200–210. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  14. Kolpakov, R.M., Kucherov, G.: Finding maximal repetitions in a word in linear time. In: FOCS, pp. 596–604 (1999)

    Google Scholar 

  15. Main, M.G.: Detecting leftmost maximal periodicities. Discret. Appl. Math. 25, 145–153 (1989)

    Article  MATH  MathSciNet  Google Scholar 

  16. Manber, U., Myers, G.: Suffix arrays: a new method for on-line string searches. SIAM J. Comput. 22(5), 935–948 (1993)

    Article  MATH  MathSciNet  Google Scholar 

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

    Article  MATH  MathSciNet  Google Scholar 

  18. Storer, J., Szymanski, T.: Data compression via textual substitution. J. ACM 29(4), 928–951 (1982)

    Article  MATH  MathSciNet  Google Scholar 

  19. Witten, I., Moffat, A., Bell, T.: Managing Gigabytes. Van Nostrand Reinhold, New York (1994)

    MATH  Google Scholar 

  20. Ziv, J., Lempel, A.: A universal algorithm for sequential data compression. IEEE Transactions on Information Theory 23(3), 337–343 (1977)

    Article  MATH  MathSciNet  Google Scholar 

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

    Article  MATH  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Crochemore, M., Ilie, L., Iliopoulos, C.S., Kubica, M., Rytter, W., Waleń, T. (2009). LPF Computation Revisited. In: Fiala, J., Kratochvíl, J., Miller, M. (eds) Combinatorial Algorithms. IWOCA 2009. Lecture Notes in Computer Science, vol 5874. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-10217-2_18

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-10217-2_18

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-10216-5

  • Online ISBN: 978-3-642-10217-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics