The naive search and its worst case, the KMP failure (prefix) table built step by step, and how KMP avoids re-checking text characters.