On a parallel-algorithms method for string matching problems (overview)

  • Suleyman Cenk Sahinalp
  • Uzi Vishkin
Invited Presentations
Part of the Lecture Notes in Computer Science book series (LNCS, volume 778)


Suffix trees are the main data-structure in string matching algorithmes. There are several serial algorithms for suffix tree construction which run in linear time, but the number of operations in the only parallel algorithm available, due to Apostolico, Iliopoulos, Landau, Schieber and Vishkin, is proportional to n log n. The algorithm is based on labeling substrings, similar to a classical serial algorithm, with the same operations bound, by Karp, Miller and Rosenberg. We show how to break symmetries that occur in the process of assigning labels using the Deterministic Coin Tossing (DCT) technique, and thereby reduce the number of labeled substrings to linear.


Parallel Algorithm String Match Suffix Tree Label Substrings Serial Algorithm 
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. [AILSV88]
    A. Apostolico, C. Iliopoulos, G. M. Landau, B. Schieber, and U. Vishkin, Parallel Construction of a Suffix Tree with Applications, In Algorithmica, 3: 347–365, 1988.Google Scholar
  2. [BV88]
    O. Berkman, and U. Vishkin, Recursive star-tree parallel data-structure, In SIAM J. Computing, 22,2: 221–242, 1993.Google Scholar
  3. [BDHPRS89]
    P. C. P. Bhatt, K. Diks, T. Hagerup, V. C. Prasad, T. Radzik, and S. Saxena, Improved Deterministic Parallel Integer Sorting, In Information and Computation, 94: 29–47, 1991.Google Scholar
  4. [BLMPSZ91]
    G. E. Blelloch, C. E. Leiserson, B. M. Maggs, C. G. Plaxton, S. J Smith, M. Zagha, A Comparison of Sorting Algorithms for the Connection Machine CM-2, In Proceedings of the 3 rd Annual ACM Symposium on Parallel Algorithms and Architectures, pages 3–16, 1991.Google Scholar
  5. [CV86a]
    R. Cole, and U. Vishkin, Deterministic Coin Tossing with Applications to Parallel List Ranking, In Information and Control, 70: 32–53, 1986.Google Scholar
  6. [CV86b]
    R. Cole, and U. Vishkin, Deterministic Coin Tossing and Accelerating Cascades: Micro and Macro Techniques for Designing Parallel Algorithms, In Proceedings of the 18 th Annual ACM Symposium on the Theory of Computing, pages 206–219, 1986.Google Scholar
  7. [Ga85]
    Z. Galil, Optimal Parallel Algorithms for String Matching, In Information and Control, 67: 144–157, 1985.Google Scholar
  8. [KMR72]
    R. M. Karp, R. E. Miller, and A. L. Rosenberg, Rapid Identification of Repeated Patterns in Strings, Trees, and Arrays, In Proceedings of the 4 th Annual ACM Symposium on the Theory of Computing, pages 125–136, 1972.Google Scholar
  9. [MV91]
    Y. Matias, and U. Vishkin, On Parallel Hashing and Integer Sorting, In Journal of Algorithms, 12,4: 573–606, 1991.Google Scholar
  10. [Mc76]
    E. M. McCreight, A Space — Economical Suffix Tree Construction Algorithm, In Journal of the ACM, 23: 262–272, 1976.Google Scholar
  11. [MSU94]
    K. Mehlhorn, R. Sundar, and C. Uhrig, Maintaining Dynamic Sequences under Equality — Tests in Polylogarithmic Time, to appear In Proceedings of the 5th Annual ACM — SIAM Symposium on Discrete Algorithms, 1994.Google Scholar
  12. [RR89]
    S. Rajasekaran, and J. H. Reif, Optimal and Sublogarithmic Time Randomized Parallel Sorting Algorithms, In SIAM Journal of Computing, 18: 594–607, 1989.Google Scholar
  13. [SV93]
    S. C. Sahinalp, and U. Vishkin, Symmetry Breaking in Suffix Tree Construction, In preparationGoogle Scholar
  14. [SV88]
    B. Schieber, and U. Vishkin, On Finding Lowest Common Ancestors: Simplification and Parallelization, In SIAM Journal of Computing, 17: 1253–1262, 1988.Google Scholar
  15. [Vi85]
    U. Vishkin, Optimal Parallel Pattern Matching in Strings, In Information and Control, 67: 91–113, 1985.Google Scholar
  16. [Vi91]
    U. Vishkin, Deterministic Sampling — A New Technique for Fast Pattern Matching, In SIAM Journal of Computing, 20: 22–40, 1991.Google Scholar
  17. [We73]
    P. Weiner, Linear Pattern Matching Algorithm, In Proceedings of the 14 th IEEE Symposium on Switching and Automata Theory, pages 1–11, 1973.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1994

Authors and Affiliations

  • Suleyman Cenk Sahinalp
    • 1
  • Uzi Vishkin
    • 2
    • 3
  1. 1.Department of Computer ScienceUniversity of Maryland at College ParkUSA
  2. 2.University of Maryland Institute for Advanced Computer StudiesCollege Park
  3. 3.Dept. of Computer ScienceTel Aviv UniversityTel AvivIsrael

Personalised recommendations