An O(n log n) algorithm for finding all repetitions in a string
Journal of Algorithms
Detecting leftmost maximal periodicities
Discrete Applied Mathematics - Combinatorics and complexity
Optimal suffix tree construction with large alphabets
FOCS '97 Proceedings of the 38th Annual Symposium on Foundations of Computer Science
Theoretical Computer Science
SIAM Journal on Discrete Mathematics
Computing Longest Previous Factor in linear time and applications
Information Processing Letters
Maximal repetitions in strings
Journal of Computer and System Sciences
How many runs can a string contain?
Theoretical Computer Science
Fast and Practical Algorithms for Computing All the Runs in a String
CPM '07 Proceedings of the 18th annual symposium on Combinatorial Pattern Matching
Towards a Solution to the "Runs" Conjecture
CPM '08 Proceedings of the 19th annual symposium on Combinatorial Pattern Matching
Language and Automata Theory and Applications
The number of runs in a string: improved analysis of the linear upper bound
STACS'06 Proceedings of the 23rd Annual conference on Theoretical Aspects of Computer Science
A universal algorithm for sequential data compression
IEEE Transactions on Information Theory
Computing regularities in strings: A survey
European Journal of Combinatorics
More results on overlapping squares
Journal of Discrete Algorithms
Hi-index | 0.00 |
A recent paper Fan et al. (2006) [10] showed that the occurrence of two squares at the same position in a string, together with the occurrence of a third near by, is possible only in very special circumstances, represented by 14 well-defined cases. Similar results were published in Simpson (2007) [19]. In this paper we begin the process of extending this research in two ways: first, by proving a ''two squares'' lemma for a case not considered in Fan et al. (2006) [10]; second, by showing that in other cases, when three squares occur, more precise results - a breakdown into highly periodic substrings easily recognized in a left-to-right scan of the string - can be obtained with weaker assumptions. The motivation for this research is, first, to show that the maximum number of runs (maximal periodicities) in a string is at most n; second, and more important, to provide a combinatorial basis for a new generation of algorithms that directly compute repetitions in strings without elaborate preprocessing. Based on extensive computation, we present conjectures that describe the combinatorial behavior in all 14 of the subcases that arise. We then prove the correctness of seven of these conjectures. Along the way we establish a new combinatorial lemma characterizing strings of which two rotations have the same period.