C++数据结构学习-字符串匹配算法

来源:互联网 发布:电梯维保扫二维码软件 编辑:程序博客网 时间:2024/04/30 10:32

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算法。

还在研究中。。。

原创粉丝点击