欲说难休andywang1026.blog.chinaunix.net
ruoyisiyu
全部博文(82)
2008年(17)
2007年(65)
HonestQi
godbach
sdccf
54443066
28650529
juyib
zoey码农
feng_z92
qianxian
wangkun_
pamire
butterfl
分类: C/C++
2007-09-03 08:30:41
作为最原始的字符串匹配算法,它的时间复杂度是O((n-m+1)m)#include "stdio.h"//计算字符串的长度int Length(char *s){ int count=0; while(*s++!='\0') count++; return count;}//字符串匹配void NaiveStringMatching(char *t,char *p){ int n=Length(t); int m=Length(p); if(n<m) { printf("Error:The P is longer than T!\n"); return; } bool find=true; printf("The string T is %s\n",t); printf("The string P is %s\n",p); for(int s=0;s<=n-m;s++) { find=true; for(int i=0;i<m;i++) { if(t[s+i]!=p[i]) { find=false; break; } } if(find) printf("Pattern occurs with shift:%d\n",s+1); }}int main(){ char t[]="abcdebcg"; char p[]="bcdebcg"; NaiveStringMatching(t,p); return 0;}
上一篇:模式匹配的KMP算法详解
下一篇:GDB使用手册
登录 注册