字符串匹配搜索最著名的当属KMP算法,今天花了一番功夫研究了一下该算法。
算法的优点是时间复杂度和字符串的长度成线性关系,对于目标字符串T[n]和模式字符串P[m],算法需要的时间复杂度为O(m)的预处理和O(n)的匹配。具体的算法参见算法导论。
利用KMP算法完成类似于strstr()的功能,打印一个字符串中所有以子串开头的组合。





































































程序输出结果:
aababaabaababaab
aababaab
字符串匹配搜索最著名的当属KMP算法,今天花了一番功夫研究了一下该算法。
算法的优点是时间复杂度和字符串的长度成线性关系,对于目标字符串T[n]和模式字符串P[m],算法需要的时间复杂度为O(m)的预处理和O(n)的匹配。具体的算法参见算法导论。
利用KMP算法完成类似于strstr()的功能,打印一个字符串中所有以子串开头的组合。
程序输出结果:
aababaabaababaab
aababaab