KMP字符串匹配(按照《算法导论》伪代码实现)
来源:互联网 发布:阿里云 cdn节点数量 编辑:程序博客网 时间:2024/05/17 17:56
#include <iostream>using namespace std;int * computePrefixFunction(const char * P){int k = 0;int length = strlen(P);int * pi = (int *)new int[length+1];pi[1] = 0;int i;for(i=2;i<=length;i++){while(k>0 && P[i-1] != P[k])k = pi[k];if(P[k] == P[i-1])k = k+1;pi[i] = k;}return pi;}void KMPFunction(const char * T,const char * P){int * pi = computePrefixFunction(P);int lengthOfText = strlen(T);int lengthOfPattern = strlen(P); int i;int q = 0;for(i=1;i<=lengthOfText;i++){while(q>0 && T[i-1] != P[q])q = pi[q];if(T[i-1] == P[q])q = q+1;if(q == lengthOfPattern){cout<<"匹配位置"<<i-lengthOfPattern<<endl;q = pi[q];}}}void main (){char * T = "abcbabababacagggabababaababaca";char * P = "ababaca"; KMPFunction(T,P);}
- KMP字符串匹配(按照《算法导论》伪代码实现)
- KMP字符串匹配算法的伪代码
- 算法导论 KMP字符串匹配
- 算法导论KMP匹配字符串
- Java实现算法导论中KMP字符串匹配算法
- 字符串匹配KMP算法C++代码实现
- 算法导论-第32章-字符串匹配:Knuth-Morris-Pratt(KMP)算法C++实现
- 字符串匹配(KMP 算法 含代码)
- 算法导论第三十二章-字符串匹配-Cpp代码实现
- kmp字符串匹配算法实现
- 字符串匹配KMP算法实现
- KMP字符串匹配算法实现
- 字符串匹配算法KMP实现
- kmp算法实现字符串匹配
- 算法导论(九)kmp匹配算法
- KMP算法实现字符串的模式匹配完整C代码
- 字符串搜索之KMP算法(伪代码)
- KMP字符串匹配算法--算法导论示例zz
- XML转JSON 个人总结
- 也谈智能手机游戏开发中的分辨率自适应问题
- 对称数
- R语言学习笔记2——常用数学函数
- Oracle_Flashback_技术_总结
- KMP字符串匹配(按照《算法导论》伪代码实现)
- java 邮件跟踪
- 给vs2010换肤
- 胡适之:大胆的假设,小心的求证
- java/while和do-while循环,for循环
- sqlplus常用命令,不解释
- 一日一点RakNet(12)--Creating Packets
- android解析来自服务器上的xml
- ubuntu 下 Eclipse C\C++ 问题:Eclipse: "Launch failed. Binary not found"