博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
KMP整理
阅读量:4350 次
发布时间:2019-06-07

本文共 529 字,大约阅读时间需要 1 分钟。

kmp用于一一匹配问题,如字符串的匹配。

一遇到匹配问题,最初大家想到的就是循环一一对比匹配了,但是那样太慢,这就需要用到kmp了,

它就是很快的,用到最大公共前后缀

如ABCDABC这个串,我们匹配ABCDABTBCDABC这个长串,当匹配到第7个字符T的时候就不匹配了,用kmp我们就不用直接移到B开始再比一次,而是直接移到第5位来比较,这样可以减少时间

如果不懂可以去听大佬讲解的视频,

以下是记录公共前后缀数的数组

void kmpnext(char s[]){    int i=0,j=-1;    int n=strlen(s);     ne[0]=-1;    while(i

以下是kmp的比较过程

int kmp(char *a,char *b)//匹配ab两串,a为父串{    int i=0,j=0;    int len1=strlen(a);    int len2=strlen(b);    getnext(b);    while(i

 这里是相关习题

包括

字符串的最大最小表示;
kmp模板;
扩展kmp;

转载于:https://www.cnblogs.com/ylrwj/p/11498736.html

你可能感兴趣的文章
2018-2019-1 20165234 20165236 实验二 固件程序设计
查看>>
IDEA的GUI连接数据库写入SQL语句的问题总结
查看>>
Xpath在选择器中正确,在代码中返回的是空列表问题
查看>>
leecode第一百九十八题(打家劫舍)
查看>>
【BZOJ 1233】 [Usaco2009Open]干草堆tower (单调队列优化DP)
查看>>
07-3. 数素数 (20)
查看>>
写一个欢迎页node统计接口Py脚本(邮件,附件)-py
查看>>
计算两个日期之间的天数
查看>>
山东省第六届蓝桥杯 ///标题:三羊献瑞//c/c++组
查看>>
Unity火炬之光进度
查看>>
mybatis-关联关系
查看>>
Dijkstra单源最短路算法的C++实现
查看>>
入门1:PHP的优点
查看>>
2017.11.30 tomcat远程调试
查看>>
C# 编写Windows Service(windows服务程序)
查看>>
Android关于buildToolVersion与CompileSdkVersion的区别
查看>>
squid代理http和https方式上网的操作记录
查看>>
深入全面理解面向对象的 JavaScript
查看>>
使用sed替换指定文件指定行的指定文本
查看>>
Zend Server的WebAPI焦点:异步操作
查看>>