#include <stdio.h>
#define MAXLEN 255
typedef struct{
char ch[MAXLEN+1];
int length;
}SString;
int Index_BF(SString S,SString T,int pos){
int i=pos;
int j=1;
while(i<=S.length&&j<=T.length){
if(S.ch[i]==T.ch[j]){
++i;
++j;
}else{
i=i-j+2;
j=1;
}
}
if(j>=T.length){
return i-T.length;
}else{
return 0;
}
}
int main(){
SString S={"abacadabrac",11};
SString T={"adabr",4};
int pos=1;
int index=Index_BF(S,T,pos);
if(index!=0){
printf("在位置%d出找到匹配\n",index);
}else{
printf("未找到匹配\n");
}
return 0;
}
BF匹配算法
最新推荐文章于 2024-07-19 19:11:19 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)