C++ 数据结构之kmp算法中的求Next()函数的算法
更新时间:2020年4月25日 17:30 点击:2039
C++ 数据结构之kmp算法中的求Next()函数的算法
实例代码:
#include <iostream> using namespace std; void preKmp(char *c, int m, int Next[]) { int i=1,j=-1; Next[0]=-2; while(i<m) { if(j==-2) { Next[i]=-1; i++; j=-1; } ++j; if(i==m) return; if(c[i]==c[j]) { Next[i]=j; ++i; } else if(j==0) { j=-2; } else j=Next[j-1]; } } int main() { cout << "Hello world!" << endl; char pat[12]="actabactace"; int next[11]; preKmp(pat,11,next); for(int i=0;i<11;i++) cout<<"next["<<i<<"]="<<next[i]<<endl; return 0; }
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
上一篇: C语言数据结构之循环链表的简单实例
下一篇: C++ 中友元函数与友元类详解
相关文章
Java while(scanner.hasNext())无法跳出的解决方案
这篇文章主要介绍了Java while(scanner.hasNext())无法跳出的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-10-30- 我们这里说的KMP不是拿来放电影的(虽然我很喜欢这个软件),而是一种算法。KMP算法是拿来处理字符串匹配的。今天我们谈到的是对KMP算法的拓展...2020-04-25
- 这篇文章主要介绍了c++ 实现KMP算法的示例,帮助大家更好的理解和学习c++,感兴趣的朋友可以了解下,希望能给你带来帮助...2021-08-15
- 这篇文章主要介绍了C++ 数据结构之kmp算法中的求Next()函数的算法的相关资料,需要的朋友可以参考下...2020-04-25
- 本篇文章是对快速模式匹配算法(KMP)进行了详细的分析介绍,需要的朋友参考下...2020-04-25
- 这篇文章主要介绍了C语言kmp算法简单示例和实现原理探究,本文用简洁的语言说明KMP算法的原理,并给出了示例,需要的朋友可以参考下...2020-04-25
- 本篇文章是对串的模式匹配算法(普通算法和KMP算法)的应用进行了详细的分析介绍,需要的朋友参考下...2020-04-25
- 这篇文章记录一下串里面的模式匹配,模式匹配,顾名思义就是给定一个被匹配的字符串,然后用一个字符串模式(模型)去匹配上面说的字符串,看后者是否在前者里面出现。常用的有2种算法可以实现,下面我们来具体探讨下...2020-04-25
- 这篇文章主要介绍了KMP算法最浅显理解(小白教程),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-04-25
- 这篇文章主要介绍了c语言中使用BF-KMP算法,大家参考使用...2020-04-25
- KMP算法即字符串匹配算法,C语言中KMP可以避免指针回溯从而达到高效,接下来就来总结一下C语言中实现KMP算法的实例讲解...2020-04-25
- 这篇文章主要介绍了Java之next()、nextLine()区别及问题解决,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下...2021-08-03
- 相信很多人(包括自己)初识KMP算法的时候始终是丈二和尚摸不着头脑,要么完全不知所云,要么看不懂书上的解释,要么自己觉得好像心里了解KMP算法的意思,却说不出个究竟,所谓知其然不知其所以然是也。...2020-04-25