Results 1 -
3 of
3
The derivation of on-line algorithms, with an application to finding palindromes
- Algorithmica
, 1994
"... Abstract. A theory for the derivation of on-line algorithms is presented. The algorithms are derived in the Bird-Meertens calculus for program transformations. This calculus provides a concise functional notation for algorithms, and a few powerful theorems for proving equalities of functions. The th ..."
Abstract
-
Cited by 5 (1 self)
- Add to MetaCart
Abstract. A theory for the derivation of on-line algorithms is presented. The algorithms are derived in the Bird-Meertens calculus for program transformations. This calculus provides a concise functional notation for algorithms, and a few powerful theorems for proving equalities of functions. The theory for the derivation of on-line algorithms is illustrated with the derivation of an algorithm for finding palindromes. An on-line linear-time random access machine (RAM) algorithm for finding the longest palindromic substring in a string is derived, For the purpose of finding the longest palindromic substring, all maximal palindromic substrings are computed. The list of maximal palindromes obtained in the computation of the longest palindrome can be used for other purposes such as finding the largest palindromic rectangle in a matrix and finding the shortest partition of a string into palindromes. Key Words. Derivation of on-line algorithms, Transformational programming, Bird-Meertens calcu-
On the Complexity of Determining the Period of a String
, 2000
"... . We study the complexity of a classical combinatorial problem of computing the period of a string. We investigate both the average- and the worst-case complexity of the problem. We deliver almost tight bounds for the average-case. We show that every algorithm computing the period must examine ..."
Abstract
- Add to MetaCart
. We study the complexity of a classical combinatorial problem of computing the period of a string. We investigate both the average- and the worst-case complexity of the problem. We deliver almost tight bounds for the average-case. We show that every algorithm computing the period must examine ( p m) symbols of an input string of length m. On the other hand we present an algorithm that computes the period by examining on average O q m log jj m symbols, where jj 2 stands for the input alphabet. We also present a deterministic algorithm that computes the period of a string using m+O(m 3=4 ) comparisons. This is the first algorithm that have the worstcase complexity m+ o(m). 1 Introduction The studies on string periodicity remain a central topic in combinatorial pattern matching due to important applications of periodicity in string searching algorithms, algebra, and in formal language theory (see, e.g., [1, 26, 36, 38, 39]). Let S =< S[1]; S[2]; : : : ; S[m...
On the Complexity of Determining the Period of a String Artur Czumaj 1 ⋆ and Leszek Ga¸sieniec 2⋆⋆
"... Abstract. We study the complexity of a classical combinatorial problem of computing the period of a string. We investigate both the average- and the worst-case complexity of the problem. We deliver almost tight bounds for the average-case. We show that every algorithm computing the period must exami ..."
Abstract
- Add to MetaCart
Abstract. We study the complexity of a classical combinatorial problem of computing the period of a string. We investigate both the average- and the worst-case complexity of the problem. We deliver almost tight bounds for the average-case. We show that every algorithm computing the period must examine Ω ( √ m) symbols of an input string of length m. On the other hand � we present an�algorithm that computes the period by examining on average O m · log|Σ | m symbols, where |Σ | ≥2 stands for the input alphabet. We also present a deterministic algorithm that computes the period of a string using m + O(m 3/4) comparisons. This is the first algorithm that have the worstcase complexity m + o(m). 1

