KMP
KMP算法是一种字符串匹配算法,可以在 O(n+m) 的时间复杂度内实现两个字符串的匹配。
主要思想是利用已经匹配上的子串信息跳过不可能成功的匹配起点。

由abcab已经匹配上可以获得一些信息。如何利用这些信息?
已知的这几个文本字符使我们能够立即确定某些偏移是无效的。
我们可以根据前缀/后缀知道更多的信息!
构筑一个longest prefix suffix union length数组 abcab:00012
然后根据它跳过一些重复比较!
KMP算法是一种字符串匹配算法,可以在 O(n+m) 的时间复杂度内实现两个字符串的匹配。
主要思想是利用已经匹配上的子串信息跳过不可能成功的匹配起点。

由abcab已经匹配上可以获得一些信息。如何利用这些信息?
已知的这几个文本字符使我们能够立即确定某些偏移是无效的。
我们可以根据前缀/后缀知道更多的信息!
构筑一个longest prefix suffix union length数组 abcab:00012
然后根据它跳过一些重复比较!