Space-Efficient Computation of Maximal and Supermaximal Repeats in Genome Sequences

  • Timo Beller
  • Katharina Berger
  • Enno Ohlebusch
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7608)


The identification of repetitive sequences (repeats) is an essential component of genome sequence analysis, and the notions of maximal and supermaximal repeats capture all exact repeats in a genome in a compact way. Very recently, Külekci et al. (Computational Biology and Bioinformatics, 2012) developed an algorithm for finding all maximal repeats that is very space-efficient because it uses the Burrows-Wheeler transform and wavelet trees. In this paper, we present a new space-efficient algorithm for finding maximal repeats in massive data that outperforms their algorithm both in theory and practice. The algorithm is not confined to this task, it can also be used to find all supermaximal repeats or to solve other problems space-efficiently.


Maximal Repeat Wavelet Tree Lossless Data Compression Real Runtime True List 
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 of Discrete Algorithms 2, 53–86 (2004)MathSciNetzbMATHCrossRefGoogle Scholar
  2. 2.
    Becher, V., Deymonnaz, A., Heiber, P.: Efficient computation of all perfect repeats in genomic sequences of up to half a gigabyte, with a case study on the human genome. Bioinformatics 25(14), 1746–1753 (2009)CrossRefGoogle Scholar
  3. 3.
    Beller, T., Gog, S., Ohlebusch, E., Schnattinger, T.: Computing the Longest Common Prefix Array Based on the Burrows-Wheeler Transform. In: Grossi, R., Sebastiani, F., Silvestri, F. (eds.) SPIRE 2011. LNCS, vol. 7024, pp. 197–208. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  4. 4.
    Burrows, M., Wheeler, D.J.: A block-sorting lossless data compression algorithm. Research Report 124, Digital Systems Research Center (1994)Google Scholar
  5. 5.
    Culpepper, J.S., Navarro, G., Puglisi, S.J., Turpin, A.: Top-k Ranked Document Search in General Text Databases. In: de Berg, M., Meyer, U. (eds.) ESA 2010, Part II. LNCS, vol. 6347, pp. 194–205. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  6. 6.
    Ferragina, P., Manzini, G.: Opportunistic data structures with applications. In: Proc. IEEE Symposium on Foundations of Computer Science, pp. 390–398 (2000)Google Scholar
  7. 7.
    Franek, F., Smyth, W.F., Tang, Y.: Computing all repeats using suffix arrays. Journal of Automata, Languages and Combinatorics 8(4), 579–591 (2003)MathSciNetzbMATHGoogle Scholar
  8. 8.
    Gog, S., Ohlebusch, E.: Lightweight LCP-array construction in linear time (2011),
  9. 9.
    Grossi, R., Gupta, A., Vitter, J.S.: High-order entropy-compressed text indexes. In: Proc. 14th Annual ACM-SIAM Symposium on Discrete Algorithms, pp. 841–850 (2003)Google Scholar
  10. 10.
    Gusfield, D.: Algorithms on Strings, Trees, and Sequences. Cambridge University Press, New York (1997)zbMATHCrossRefGoogle Scholar
  11. 11.
    Haas, B.J., Salzberg, S.L.: Finding repeats in genome sequences. In: Lengauer, T. (ed.) Bioinformatics — From Genomes to Therapies, Volume 1: Molecular Sequences and Structures, ch. 7, Wiley-VCH Verlag (2007)Google Scholar
  12. 12.
    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
  13. 13.
    Külekci, M.O., Vitter, J.S., Xu, B.: Efficient maximal repeat finding using the Burrows-Wheeler transform and wavelet tree. IEEE/ACM Transactions on Computational Biology and Bioinformatics 9(2), 421–429 (2012)CrossRefGoogle Scholar
  14. 14.
    Narisawa, K., Inenaga, S., Bannai, H., Takeda, M.: Efficient Computation of Substring Equivalence Classes with Suffix Arrays. In: Ma, B., Zhang, K. (eds.) CPM 2007. LNCS, vol. 4580, pp. 340–351. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  15. 15.
    Okanohara, D., Sadakane, K.: A Linear-Time Burrows-Wheeler Transform Using Induced Sorting. In: Karlgren, J., Tarhio, J., Hyyrö, H. (eds.) SPIRE 2009. LNCS, vol. 5721, pp. 90–101. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  16. 16.
    Prieur, E., Lecroq, T.: On-line construction of compact suffix vectors and maximal repeats. Theoretical Computer Science 407(1-3), 290–301 (2008)MathSciNetzbMATHCrossRefGoogle Scholar
  17. 17.
    Puglisi, S.J., Smyth, W.F., Turpin, A.: A taxonomy of suffix array construction algorithms. ACM Computing Surveys 39(2), 1–31 (2007)CrossRefGoogle Scholar
  18. 18.
    Puglisi, S.J., Smyth, W.F., Yusufu, M.: Fast, practical algorithms for computing all the repeats in a string. Mathematics in Computer Science 3(4), 373–389 (2010)MathSciNetzbMATHCrossRefGoogle Scholar
  19. 19.
    Raffinot, M.: On maximal repeats in strings. Information Processing Letters 80(3), 165–169 (2001)MathSciNetzbMATHCrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Timo Beller
    • 1
  • Katharina Berger
    • 1
  • Enno Ohlebusch
    • 1
  1. 1.Institute of Theoretical Computer ScienceUniversity of UlmUlmGermany

Personalised recommendations