1:
BF算法-该算法的基本思想是从主串T(t0,t1,t2,....tn-1)中的start个字符起和模式的第一个字符比较,如果相等,则继续逐个比较后续字符;比较过程中发现一旦不相等,就回溯到主串的start+1个字符为,从新和模式P的字符比较。
伪代码:
int index(char s[], char t[], int start)
{
int i,j,m,n;
m=len(s);
n=len(t);
i=start;
j=0;
while(i<m&&j<n)
if(s[i]==t[j]){i++;j++;}
else{i=i-j+1;j=0;}
if(j>=n)return (i-n);
else return (0);
}
2.KMP算法。
还在研究中。。。