就是说,在主串中查找是否有一个子串和想要的串各个元素都形同
算法思路:
1. 利用循环,当主串(S)和字串(T)都不为空,则进行匹配
2.1 如果S[i] = T[i],则比较下一个字符
2.2 否则将i回溯,准备下一趟。
3. 如果T(字串)中所有字符都比较完,说明在主串中找到了字串,则匹配成功.
如果主串S中所有字符都比较完了,说明比较完主串,还是没有匹配到字串,则匹配失败
int BF(string S,string T){
int i=0,j=0;
while(S[i]!='\0' && T[i] != '\0'){
ifi(S[i] == T[i]){
i++;
j++;
}
else{
i = i-j+1;
j=0;
}
}
if(T[i]=='\0')
return i-j; //返回找到的下标.
else
return -1;
}