![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
KMP
文章平均质量分 83
yuanjilai
走在从2B到NB的路上
展开
-
KMP字符串模式匹配详解
KMP字符串模式匹配通俗点说就是一种在一个字符串中定位另一个串的高效算法。简单匹配算法的时间复杂度为O(m*n);KMP匹配算法。可以证明它的时间复杂度为O(m+n).。 一. 简单匹配算法 先来看一个简单匹配算法的函数: int Index_BF (char S[], char T[], int pos) { //若串 S 中从第pos(S 的下标0≤pos<StrLen转载 2012-03-05 15:11:43 · 371 阅读 · 0 评论 -
KMP算法
求next[]数组 void comp_next(char *p, int next[]) { int k = -1,i = 0,m = strlen(p); next[0] = -1; while (i < m-1) { while (k != -1 && p[k] != p[i]) k = next[k]; i++; k++; if (p[i] == p[k转载 2012-03-05 15:23:48 · 873 阅读 · 0 评论 -
字符串匹配算法总结
一、最简单的BF算法 从文本T的第一个字母和模式P的第一个字母匹配,如果不匹配,则从T的第二个字母开始匹配。 int BF(char *str, char *ch) { int len1 = strlen(str); int len2 = strlen(ch); int i=0,j=0; while (i < len1 && j < len2){ if (str[i]原创 2012-10-16 10:06:29 · 642 阅读 · 0 评论