KMP算法理解起来真的有难度,听视频足足两次,花两个小时才搞懂,不容易啊!
kmp算法(线性复杂度O(m+n)
int Index_KMP(SString S,SString T,int pos){ //返回子串T在主串S中第pos个字符的位置,若不存大,则函数值为0 //其中,T非空,1<pos<StrLength(S) i=pos; j=1; while(i<=S[0]&&j<=T[0]){ if(j=0||S[i]==T[j]){++i;++j;}//继续比较后继字符 else{j=next[j];}//指针后退重新开始匹配 } if(j<T[0]) return i-T[0]; } |
串匹配算法之最终版KMP算法
最新推荐文章于 2024-09-21 14:48:47 发布