String matching with variable length gaps

Philip Bille, Inge Li Gørtz, Hjalte Wedel Vildhøj, David Kofoed Wind

Research output: Contribution to journalJournal articleResearchpeer-review

1 Downloads (Pure)

Abstract

We consider string matching with variable length gaps. Given a string T and a pattern P consisting of strings separated by variable length gaps (arbitrary strings of length in a specified range), the problem is to find all ending positions of substrings in T that match P. This problem is a basic primitive in computational biology applications. Let m and n be the lengths of P and T, respectively, and let k be the number of strings in P. We present a new algorithm achieving time O(nlogk+m+α) and space O(m+A), where A is the sum of the lower bounds of the lengths of the gaps in P and α is the total number of occurrences of the strings in P within T. Compared to the previous results this bound essentially achieves the best known time and space complexities simultaneously. Consequently, our algorithm obtains the best known bounds for almost all combinations of m, n, k, A, and α. Our algorithm is surprisingly simple and straightforward to implement. We also present algorithms for finding and encoding the positions of all strings in P for every match of the pattern.
Original languageEnglish
JournalTheoretical Computer Science
Volume443
Pages (from-to)25-34
ISSN0304-3975
DOIs
Publication statusPublished - 2012

Keywords

  • String matching
  • Variable length gaps
  • Algorithms

Fingerprint

Dive into the research topics of 'String matching with variable length gaps'. Together they form a unique fingerprint.

Cite this