In this lecture, we consider the string matching problem finding some or all places in a text where the query string occurs as a substring. From the perspective of a one-shot approach, we can solve string matching in O(|T |) time, where |T | is the size of our text. This purely algorithmic approach has been studied extensively in the papers by Knuth-Morris-Pratt [6], Boyer-Moore [1], and Rabin-...