kmp算法的应用
来源:互联网 发布:淘宝联盟注册 编辑:程序博客网 时间:2024/05/21 18:41
题目:
http://poj.org/problem?id=2752
用KMP每次求得的next值就是当前到i为止的前子串与后字串相等的子串的长度,这也正是KMP的精髓所在,呵呵,通过这道题目才理解到的..!
#include<cstdio>#include<cstdlib>#include<cstring>char s[400001];int next[400001];int ans[400001];void solve(char *s,int ls){ int i=0,j=-1; next[0]=-1; while(i<ls) { if(j==-1||s[i]==s[j]) { i++; j++; next[i]=j; } else { j=next[j]; } }}int main(){ while(scanf("%s",s)!=EOF) { int i=0; ans[0]=strlen(s); solve(s,ans[0]); while(ans[i++]) { ans[i]=next[ans[i-1]]; //从长到短,递归查找前子串后子串相等的子串 } for(int j=i-2;j>=0;j--) printf("%d ",ans[j]); printf("\n"); } return 0;}
- kmp算法的应用
- KMP算法的应用1
- HDU1867-KMP算法的应用
- poj 1961 KMP算法的应用
- KMP算法中的NEXT数组的应用
- hdu 3336(KMP算法的应用)
- KMP算法的初级扩展应用
- KMP算法应用
- KMP算法及其应用
- POJ3461 Oulipo KMP算法应用
- KMP算法及其扩展应用
- PKU 2406(KMP算法的灵活应用)
- kmp算法的思想及其简单应用(java版)
- 杭电 2087 KMP算法的应用 求出现次数
- POJ 2752 KMP算法中next数组的应用
- poj 1961 kmp算法之next数组的意义应用
- A - Number Sequence HDU1005 ( kmp 算法+整数数组的应用)
- POJ3461——Oulipo KMP算法的应用
- 获取文件图标,返回Icon
- 用汇编的眼光看C++(之 总结篇)
- 《花开半夏》--1 约定(1)
- OpenGL ES顶点数据绘制技巧
- Java实现TCP通讯
- kmp算法的应用
- CorePlot1.0:折线图
- Android 广播大全 Intent Action 事件
- 《花开半夏》--1 约定(2)
- word批量插入某目录下的所有图片及图片名称
- Loading Large Bitmaps Efficiently 高效地加载大位图
- 《花开半夏》--2 弟弟(1)
- android系统action大全
- Global Assembly Cache