| 查看: 932 | 回复: 6 | |||
[交流]
顺序串kmp无回溯算法 大神进来指导一下
|
|||
|
void SqString::get_next(int* next, int display) { int j=-1,i=0; int first_i; char no[5]=" [ i]"; next[0[=-1; while(i if(j==-1||ch[j]=ch) { ++j; ++i; next=j; } else j=next[j]; } if(display==1) { cout<<" 当前模式串的next[]数组为:"< while(first_i i=first_i; cout<<" "; do { if(i<10) no[2]=i+"0"; (这是什么意思) else { no[1]=i/10+"0"; no[2]=i%10="0"; } cout.width(5); cout.fill("" ;cout.setf(ios::right,ios::adjustfileld); cout< } while(i%10&&i cout<<" "; i=first_i; do { cout.width(5); cout.fill("" ;cout.setf(ios::right,ios::adjustfileld); cout< i++; } while(i%10&&i cout<<" "; i=first_i; do { cout.width(5); cout.fill("" ;cout.setf(ios::right,ios::adjustfileld); cout< i++; } while(i%10&&i cout< } } 这是主要的求next数组的 看不懂啊。。。。。。。请指点 |
» 猜你喜欢
医学类期刊求推荐
已经有5人回复
生活琐事由它去
已经有4人回复
提交了我也来说说感想
已经有12人回复
青B发送上会通知了吗
已经有9人回复
西安交大新媒学院副院长用撤稿论文结题
已经有6人回复
论文撤稿了
已经有8人回复
化学专业申博
已经有4人回复
某211大学教师把个人教师官方主页改成:我跑了我跑了我跑了!官宣跑路!
已经有5人回复
26/27申博自荐
已经有9人回复
博士申请
已经有3人回复
» 抢金币啦!回帖就可以得到:
中科院深圳先进技术研究院集成电路先进封装博士后招聘
+1/81
诚邀津门师者共研
+1/78
福州大学化工学院电子化学品团队博士招生,还有一个名额!
+1/76
真诚寻找另一半 觉得合适可以相互了解
+1/71
江西理工大学稀土学院急招博士生(2026年9月入学)2名,稀土光功能材料方向,非诚勿扰
+1/28
招聘青年教师(有编制)——南京邮电大学柔性电子全国重点实验室徐申课题组
+1/26
郑州大学·安徽高等研究院 2026年博士招生(申请考核制)
+1/23
【急招】 北京工业大学 能动第二批博士申请-杰青课题组1-2名额,25日截止!!
+1/14
紧急招收2026年秋季入学博士生1名(湘潭大学 固体废弃物低碳利用湖南省工程研究中心)
+1/13
【截止2026年5月31日】石家庄铁道大学智能交通课题组诚招理工科背景博士
+1/13
深圳大学物理与光电工程学院/深圳先进光源研究院招收2026级联合培养博士生
+1/10
材料分析测试
+1/10
北理工国家杰青团队招博士后
+1/9
北理工国家杰青团队招博士后
+1/8
【截止2026年5月31日】石家庄铁道大学智能交通课题组诚招理工科背景博士
+2/4
【有偿访谈招募】高才通来港后,你过得还好吗?
+1/4
博士后招聘(高薪40万+)
+1/3
哈尔滨工业大学(深圳)国家级青年人才机械、热能与能源等专业博士补充招生-260531前
+1/3
江西理工大学稀土学院/国家稀土功能材料创新中心招收博士研究生
+1/2
【内蒙古科技大学冶金工程专业博士招生】
+1/1
2楼2012-11-01 22:40:26
3楼2012-11-02 11:38:13
4楼2012-11-02 11:39:34
★ ★ ★ ★ ★ ★
小木虫: 金币+0.5, 给个红包,谢谢回帖
断点~+++: 金币+5 2012-11-03 15:08:23
小木虫: 金币+0.5, 给个红包,谢谢回帖
断点~+++: 金币+5 2012-11-03 15:08:23
|
定义no是个字符数组 而char又可以跟short,int等类型进行转换,具体分为signed和unsigned: 然后看这句: 我比较怀疑是不是抄错了,应该是单引号'0'而不是双引号?单引号'0'表示0这个字符,然后i是整型,2个相加等于下面的过程 '0'先被转为整型,与i相加,然后再转为char类型存入no数组的第三个位置 因为既然'0'表示0的int值,那么i+'0'当i在0-9之间取值时,i+'0'的结果就是'0'到'9'这10个字符 那么下面的代码就是: 如果i小于10,将i对应的个位数转为对应的字符存入no数组第三个位置 否则,将两位数i转为对应的字符,分别存入no数组的第二和第三个位置 不过,数字转为对应字符串(例如20转为"20" 一般建议2种做法,一个是itoa()函数,另一个标准做法是sprintf()函数 |
5楼2012-11-02 17:09:37
7楼2012-11-03 15:08:07
简单回复
su-b086楼
2012-11-02 21:17
回复












;
回复此楼