KMP 模板
来源:互联网 发布:怎么用手机开淘宝网店 编辑:程序博客网 时间:2024/06/13 09:45
测试题目:
const int maxn = 100;char s[maxn],p[maxn];int fail[maxn];/* p为模式串** f为保存失配边的数组***/void getFail(char* p,int* f){ int m = strlen(p); f[0] = 0; f[1] = 0; for(int i = 1;i < m;++i){ int j = f[i]; while(j && p[i] != p[j]) j = f[j]; f[i + 1] = p[i] == p[j] ? j + 1 : 0; }}/*** s为文本串 p为模式串,fail保存失配边** 匹配成功返回true** 失败返回false*/bool Match(char* s,char* p,int* fail){ getFail(p,fail);//得到fail数值 int m = strlen(p),n = strlen(s); int i = 0, j = 0; while(i < n){ while(i < n && j < m && s[i] == s[j]){//新一轮匹配 i++,j++; } if(j == m) return true;//匹配成功 j--; while(j && p[j] != s[i]) j = fail[j];//根据fail跳转 } return false;}
0 0
- KMP模板
- KMP 模板
- kmp模板
- kmp模板
- kmp模板
- KMP模板
- kmp模板
- kmp模板
- KMP 模板
- 【模板】KMP
- KMP模板
- KMP模板
- 【KMP 模板】
- KMP模板
- KMP 模板
- kmp模板
- KMP模板
- KMP 模板
- 求两个数的最大公约数
- 从零开始学习OpenGL——基础概念
- 【腾讯Bugly干货分享】Android Linker 与 SO 加壳技术
- 基于C#的MongoDB数据库开发应用(1)--MongoDB数据库的基础知识和使用
- Date日期工具类---Java
- KMP 模板
- 使用TTF字体
- NOIp 2011铺地毯
- Android异步加载图片并缓存到内存和SD卡上
- fragment中嵌套viewpager,vierpager中有多个fragment,不显示 .
- 基于C#的MongoDB数据库开发应用(2)--MongoDB数据库的C#开发
- pip使用报错【cannot import name HTTPSHandler】
- Qt添加系统的资源文件(Window系统的RC文件等)
- xcode打包ios模拟器包