Abstract
An exact run in a string, T, is a non-empty substring of T that can be divided into adjacent non-overlapping identical substrings. Finding exact runs in strings is an important problem and therefore a well studied one in the strings community. For a given string T of length n, finding all maximal exact runs in the string can be done in O(n logn) time or O(n) time on integer alphabets. In this paper, we investigate the maximal approximate runs problem: for a given string T and a number k, find every non-empty substring T′ of T such that changing at most k letters in T′ transforms it into a maximal exact run in T. We present an \(O(nk^2 \log k \log \frac{n}{k})\) algorithm.
Keywords
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
Crochemore, M.: An optimal algorithm for computing the repetitions in a word. Inf. Process. Lett. 12, 244–250 (1981)
Apostolico, A., Preparata, F.P.: Optimal off-line detection of repetitions in a string. Theor. Comput. Sci. 22, 297–315 (1983)
Main, M.G., Lorentz, R.J.: An o(n log n) algorithm for finding all repetitions in a string. J. Algorithms 5, 422–432 (1984)
Kosaraju, S.R.: Computation of squares in a string (preliminary version). In: Crochemore, M., Gusfield, D. (eds.) CPM 1994. LNCS, vol. 807, pp. 146–150. Springer, Heidelberg (1994)
Gusfield, D., Stoye, J.: Linear time algorithms for finding and representing all the tandem repeats in a string. J. Comput. Syst. Sci. 69, 525–546 (2004)
Iliopoulos, C.S., Moore, D., Smyth, W.F.: A characterization of the squares in a fibonacci string. Theor. Comput. Sci. 172, 281–291 (1997)
Kolpakov, R.M., Kucherov, G.: Finding maximal repetitions in a word in linear time. In: Foundations of Computer Science, pp. 596–604 (1999)
Crochemore, M., Hancart, C., Lecroq, T.: Algorithms on Strings, 392 pages. Cambridge University Press (2007)
Main, M.G.: Detecting leftmost maximal periodicities. Discrete Applied Mathematics 25, 145–153 (1989)
Crochemore, M.: Recherche linéaire d’un carré dans un mot. C. R. Acad. Sc. Paris Sér. I Math. 296, 781–784 (1983)
Crochemore, M., Ilie, L.: Computing longest previous factors in linear time and applications. Information Processing Letters 106, 75–80 (2008), doi:10.1016/j.ipl.2007.10.006
Landau, G.M., Schmidt, J.P., Sokol, D.: An algorithm for approximate tandem repeats. Journal of Computational Biology 8, 1–18 (2001)
Sim, J.S., Iliopoulos, C.S., Park, K., Smyth, W.F.: Approximate periods of strings. In: Crochemore, M., Paterson, M. (eds.) CPM 1999. LNCS, vol. 1645, pp. 123–133. Springer, Heidelberg (1999)
Kolpakov, R.M., Kucherov, G.: Finding approximate repetitions under Hamming distance. Theor. Comput. Sci. 1, 135–156 (2003)
Amir, A., Eisenberg, E., Levy, A.: Approximate periodicity. In: Cheong, O., Chwa, K.-Y., Park, K. (eds.) ISAAC 2010, Part I. LNCS, vol. 6506, pp. 25–36. Springer, Heidelberg (2010)
Parikh, R.J.: On context-free languages. Journal of the ACM 13, 570–581 (1966)
Landau, G.M., Vishkin, U.: Fast parallel and serial approximate string matching. Journal of Algorithms 10, 157–169 (1989)
Galil, Z., Giancarlo, R.: Improved string matching with k mismatches. SIGACT News 17, 52–54 (1986)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Amit, M., Crochemore, M., Landau, G.M. (2013). Locating All Maximal Approximate Runs in a String. In: Fischer, J., Sanders, P. (eds) Combinatorial Pattern Matching. CPM 2013. Lecture Notes in Computer Science, vol 7922. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-38905-4_4
Download citation
DOI: https://doi.org/10.1007/978-3-642-38905-4_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-38904-7
Online ISBN: 978-3-642-38905-4
eBook Packages: Computer ScienceComputer Science (R0)