
回归经典系列之串操作 KMP BF
文章平均质量分 72
miao6664659
这个作者很懒,什么都没留下…
展开
-
串的操作(一) BruteForce (BF)算法 朴素的模式匹配
这个系列全是一些经典的算法,难度并不高,但十分经典。 串的基本操作(一) http://blog.fishc.com/2258.html让编程改变世界Change the world by program字符串以前的计算机刚被发明的时候,主要作用是做一些科学和工程的计算工作,科学家发明计算机的时候压根儿不可能想到后人还可以用来看毛片。刚开始的计算机都转载 2013-04-01 09:47:58 · 1142 阅读 · 0 评论 -
KMP (看毛片算法) 养成篇 (一)(启发篇)
http://blog.fishc.com/2274.html本系列全是经典算法,绝无特别简单和特别难以理解的算法。 让编程改变世界Change the world by program KMP算法 相信很多鱼油(包括小甲鱼自己)在刚开始接触KMP算法的时候始终是丈二和尚摸不着头脑,要么完全不知所云,要么看不懂书上的解释,要么自己觉得好像心里了解KMP算法的意思转载 2013-04-01 11:14:44 · 14666 阅读 · 0 评论 -
KMP算法 (养成篇2) 启发篇 Next数组
http://blog.fishc.com/2293.htmlKMP算法之养成篇 为了照顾广大喜欢细嚼慢咽的朋友,小甲鱼再添加一讲继续深入探讨思路。这次我们给模式匹配串添加一个k数组(也就是KMP算法中非著名的next数组)。这是一个“智能”的数组,因为他指导着模式匹配串下一步改用第几号元素去进行匹配。No pic you say a J8! next数组转载 2013-04-01 15:57:39 · 901 阅读 · 0 评论 -
KMP算法之NEXT数组原理分析
http://blog.fishc.com/2297.html让编程改变世界Change the world by programKMP算法之NEXT数组代码原理分析NEXT数组:当模式匹配串T失配的时候,NEXT数组对应的元素指导应该用T串的哪个元素进行下一轮的匹配。i(后缀)= 1 2 。3 4 5 6 7 。8 9j(前缀)= 0 1 0 1 2转载 2013-04-01 20:45:03 · 1182 阅读 · 0 评论 -
KMP算法之最终实现及 NEXT数组的优化
让编程改变世界Change the world by program http://blog.fishc.com/2303.htmlKMP算法之最终实现及优化 搞定了NEXT数组,KMP算法就易如反掌了。一起来完成:kmp.c KMP模式匹配算法改进 后来有人发现,KMP算法是有缺陷的。比如我们的主串 S =“aaaabcde”,子串 T =“a转载 2013-04-02 09:28:30 · 1415 阅读 · 0 评论 -
KMP数组之应用之 最长重复子串的求取(不太好形容)
#define N 100int next[N];int getNext(char *des){ int i;//i为串的后缀 int j;//j为串的前缀 i=0; j=-1; next[i]=-1; while(i<strlen(des)) { if(j==-1||des[i]==des[j]) { i++;j++;//前缀和后缀后移 //next[i]转载 2013-04-02 09:43:57 · 1988 阅读 · 0 评论