Score: 0

String Matching with a Dynamic Pattern

Published: June 12, 2025 | arXiv ID: 2506.11318v1

By: Bruno Monteiro, Vinicius dos Santos

Potential Business Impact:

Finds words in text even when words change.

Business Areas:
Text Analytics Data and Analytics, Software

In this work, we tackle a natural variation of the String Matching Problem on the case of a dynamic pattern, that is, given a static text $T$ and a pattern $P$, we want to support character additions and deletions to the pattern, and after each operation compute how many times it occurs in the text. We show a simple and practical algorithm using Suffix Arrays that achieves $\mathcal O(\log |T|)$ update time, after $\mathcal O(|T|)$ preprocess time. We show how to extend our solution to support substring deletion, transposition (moving a substring to another position of the pattern), and copy (copying a substring and pasting it in a specific position), in the same time complexities. Our solution can also be extended to support an online text (adding characters to one end of the text), maintaining the same amortized bounds.

Country of Origin
🇧🇷 Brazil

Page Count
16 pages

Category
Computer Science:
Data Structures and Algorithms