BF算法:
输入:主串S,模式T
输出:T在S中的位置
第一趟匹配 i-> 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
I=2,j=2 a b a b c a b c c a b c a c b a b
匹配失败 j-> a b c a c
第二趟匹配 i-> 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
I=1,j=0 a b a b c a b c c a b c a c b a b
匹配失败 j-> a b c a c
第三趟匹配 i-> 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
I=6,j=4 a b a b c a b c c a b c a c b a b
匹配失败 j-> a b c a c
。
。
。以此类推
。
。
第十趟匹配 i-> 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
I=9,j=5 a b a b c a b c c a b c a c b a b
匹配成功 j-> a b c a c
//BF算法
#include<stdio.h>
int main(){
char s[]="ababcabccabcacbab";
char t[]="abcac";
int k;
int index=0;
int i=0,j=0;
while((s[i]!='\0')&&(t[j]!='\0'))
{
if(s[i]==t[j])