arXiv · 2506.11318
String Matching with a Dynamic Pattern
Abstract
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.
Explore related subjects
Keep this discovery
Bruno Monteiro, Vinicius dos Santos. 2025-06-12. String Matching with a Dynamic Pattern. https://arxiv.org/abs/2506.11318
Cite the original work for its findings. Save a collection to share your selection of sources.