KMP字符串匹配

发布时间 2023-06-18 20:40:28作者: o-Sakurajimamai-o

kmp算法是优化字符串匹配效率:

//KMP字符串匹配:
//模板:
#include<bits/stdc++.h>
using namespace std;
const int N=1e6+10;
char s1[N],s2[N];
int n,m,ne[N];
int main()
{
    cin>>s1+1>>s2+1;
    n=strlen(s1+1),m=strlen(s2+1);
    for(int i=2,j=0;i<=m;i++){
        while(j&&s2[i]!=s2[j+1]) j=ne[j];
        if(s2[i]==s2[j+1]) j++;
        ne[i]=j;
    }
    return 0;
}