KMP算法
来源:互联网 发布:sql where in 编辑:程序博客网 时间:2024/05/21 19:43
//-------------------------------KMP算法 /* 字串匹配算法*/#include <stdio.h>#include <string.h>int next[100];char a[100];char b[100];void GetNext(int bLen){ int x,y,k,j; j = 0; k = -1; next[0] = -1; while(j<bLen) { if(k==-1||b[j]==b[k]) { j++; k++; next[j] = k; } else { k = next[k]; } }}int KMP(int aLen,int bLen){ int i,j; i = j = 0; while(i<aLen && j<bLen) { if(j==-1||a[i]==b[j]) { i++; j++; } else { j = next[j]; } } if(j>=bLen) { return(i-bLen+1); } else { return -1; }}int main(){ printf("请输入主串:\n"); scanf("%s",a); printf("请输入子串:\n"); scanf("%s",b); int aLen,bLen; aLen = strlen(a); bLen = strlen(b); GetNext(bLen); int i = KMP(aLen,bLen); printf("%d\n",i); return 0;}
阅读全文
0 0
- KMP算法详解 【KMP】
- 【KMP】KMP算法模板
- KMP hihoCoder1015 KMP算法
- kmp算法
- KMP算法
- KMP算法
- KMP算法
- KMP算法
- KMP 算法
- kmp算法
- KMP算法
- kmp算法
- KMP算法
- KMP算法
- kmp算法
- kmp算法
- KMP算法
- KMP算法
- 数据结构 P38 算法实现 在带头结点的单链表的第i个元素插入元素e
- hibernate之注解2
- 分享一个有意思的英语小故事
- 网络流(1)——最大流、最小割
- 【数位DP】HDU4507[吉哥系列故事——恨7不成妻]题解
- KMP算法
- 矩阵快速幂(校赛)
- 在Ubuntu 16.04下安装g2o
- 七种循环方式实现题目
- 安装SVN步骤
- spring、springmvc、mybatis整合搭建ssm项目(Eclipse+maven)
- 写一个函数,实现数组的赋值 清空 和逆置
- 面向对象练习
- python Debug 单步调试