VC++2012编程演练数据结构 KMP算法(二)

2014-11-23 17:37:49 · 作者: · 浏览: 59
f("主串s中不含模式串t\n");

printf("GetNext-IndexKMP的结果:\n");
s[0]=N;t[0]=M;
GetNext(t,next);
Index=IndexKMP(s,t,next,1);
if(Index)
printf("模式串在主串的位置从第%d个字符开始\n",Index);
else printf("主串s中不含模式串t\n");

printf("GetNextVal-IndexKMP的结果:\n");
GetNextVal(t,next);
Index=IndexKMP(s,t,next,1);
if(Index)
printf("模式串在主串的位置从第%d个字符开始\n",Index);
else printf("主串s中不含模式串t\n");

printf("GetNext-IndexKMP的结果:\n");
GetNext(t,next);
Index=IndexKMP(s,t,next);
if(Index)
printf("模式串t在主串s中的位置从第%d个字符开始\n",Index);
else printf("主串s中不含模式串t\n");

printf("IndexBF的结果:\n");
Index=IndexBF(s,t,1);
if(Index) www.2cto.com
printf("模式串t在主串s中的位置从第%d个字符开始\n",Index);
else printf("主串s中不含模式串t\n");
cin.get();}


效果如下