Constant-Time Randomized Parallel String Matching

  title={Constant-Time Randomized Parallel String Matching},
  author={Maxime Crochemore and Zvi Galil and Leszek Gąsieniec and Kunsoo Park and Wojciech Rytter},
  journal={SIAM J. Comput.},
Given a pattern string of length m for the string-matching problem, we design an algorithm that computes deterministic samples of a sufficiently long substring of the pattern in constant time. This problem used to be the bottleneck in the pattern preprocessing for one- and two-dimensional pattern matching. The best previous time bound was O(log2 m / log log m). We use this algorithm to obtain the following results (all algorithms below are optimal parallel algorithms on a CRCW PRAM): a… 
Constant-Time Word-Size String Matching
We present a novel string-matching algorithm that requires constant time for text scanning in an unusual model where (a) the input pattern and text are each packed into a single word, (b) the output
Efficient String Matching on Packed Texts
This paper presents an efficient CRCW-PRAM string-matching algorithm for packed strings that takes O (log log (m/λ)) time and performs O(n/λ) operations for λ = O(log n), an improvement by a factor of λ on the number of operations used in previous algorithms.
Almost-optimal fully LZW-compressed pattern matching
The techniques used can be used in design of efficient algorithms for a wide range of the most typical string problems, in the compressed LZW setting, including: computing a period of a word, finding repetitions, symmetries, counting subwords, and multi-pattern matching.
Towards Optimal Packed String Matching 1
The Crochemore-Perrin constant-space O( n)-time string matching algorithm is extended to run in optimal O(n/α) time and even in real-time, achieving a factor α speedup over traditional algorithms that examine each character individually.
A fast string matching algorithm based on lowlight characters in the pattern
A new string matching algorithm is put forth which matches the pattern from neither the left nor the right end, instead a special position, which is more flexible to pick the position for starting comparisons.
On the Complexity of Determining the Period of a String
A deterministic algorithm that computes the period of a string using m+O(m3/4) comparisons is presented, which is the first algorithm that have the worstcase complexity m + o(m).
Multi-pattern Matching with Wildcards
Three efficient algorithms based on the fast Fourier transform to find all the occurrences of a set of patterns with wildcards in a text where patterns are matched simultaneously are presented.
Optimal Regular Tree Pattern Matching Using Pushdown Automata
A construction that augments the precomputation step of a regular tree pattern matching algorithm to include cost analysis is proposed, which can handle a larger class of cost augmented regular tree grammars than can be preprocessed by conventional methods.


A lower bound for parallel string matching
The paper derives the parallel complexity of the string matching problem using p processors for general alphabets, which is the number of rounds necessary for finding occurrences of a pattern string in a text string in parallel using m comparisons in each round.
Efficient Randomized Pattern-Matching Algorithms
We present randomized algorithms to solve the following string-matching problem and some of its generalizations: Given a string X of length n (the pattern) and a string Y (the text), find the first
Work-time-optimal parallel algorithms for string problems
This work design worl{-time-optirnal algorithm for a number of string processing problems on the EREW-PRAM and the hypercuhe, which include string matching and two dimensional pattern matching.
Optimal Parallel Pattern Matching in Strings
An Optimal O(log log n) Time Parallel String Matching Algorithm
An optimal $O(\log \log n)$ time parallel algorithm for string matching on CROW-PRAM is presented. It improves previous results of Galil [Inform, and Control, 67 (1985), pp. 144–157] and Vishkin
Deterministic sampling—a new technique for fast pattern matching
This work considers the string matching problem and proposes a new linear time serial algorithm for string matching that enables to perform the text analysis in O (log*n) time and optimal speed-up on a PRAM.
The Parallel Simplicity of Compaction and Chaining
  • P. Ragde
  • Computer Science, Mathematics
    J. Algorithms
  • 1993
The ordered chaining problem is shown to be solvable in time O(α(k)) with n processors (where α is a functional inverse of Ackermann's function) and unordered chaining can be solved in constant time with nprocessor when k.
A constant-time optimal parallel string-matching algorithm
A constant-time optimal parallel algorithm for finding all occurences of the (preprocessed) pattern in any given text is designed.
Optimal Pattern Matching on Meshes
An algorithm solving the problem in time O(√n) is presented, which applies a novel technique to design parallel pattern-matching algorithms based on the notion of a pseudoperiod.
Relations between concurrent-write models of parallel computation
By fixing the number of processors and parametrizing theNumber of shared memory cells, tight separation results between the models are obtained, thereby partially answering open questions of Vishkin [V].