【菜鸟求指教】在进行KMP算法时我打印出next函数的值不对,但我的代码好像没错误啊
本帖最后由 小鱼fans 于 2013-11-23 11:34 编辑#include<iostream>
#include<string>
using namespace std;
void Getnext(string T,int next[])
{
int i = 1,j =0;
next =0;
while(i<T.size())
{
if(0 ==j||T==T){i++;j++;next = j;}
else
j = next;
}
}
int main()
{
string T;
int next;
int n;
cout<<"请输入你要测试的次数:"<<endl;
cin>>n;
while(n){
cout<<"请输入你要求的字符串的"<<endl;
cin>>T;
Getnext(T,next);
int i;
cout<<"所求字符串的next的值是:"<<endl;
for(i=1;i<=T.size();i++)
{
cout<<next;
}
n--;
cout<<endl;
}
return 0;
}
分享到:http://bbs.fishc.com/dreambred_dir/apple_c_3/images/common//qzone.gifQQ空间http://bbs.fishc.com/dreambred_dir/apple_c_3/images/common//weibo.png腾讯微博http://bbs.fishc.com/dreambred_dir/apple_c_3/images/common//pengyou.png腾讯朋友
帮顶,坐等楼下大神 学习 学习
页:
[1]