int index(SString S,SString T){//S主串,T模式串
int i=1,j=1;
while(i<=S.length&&j<=T.length){
if(S.ch[i]=S.ch[j]){
++i;++j;//继续比较后继字符
}
else{
i=i-j+2;
j=1; //指针后退重新开始匹配
}
}
if(j>T.length)
return i-T.length;
else
return 0;
}
时间复杂度:O(nm)//n为主串长度,m为模式串长度