
next数组
Attention_0
这个作者很懒,什么都没留下…
展开
-
数据结构严薇敏——KMP算法之next数组代码实现
KMP算法是在已知模式串的next函数值的基础上执行的,所以必须先求出模式串的next数组值。具体原理可以参考视频讲解:https://www.bilibili.com/video/av21828275/?p=39实现代码如下:#include <stdio.h>#include <stdlib.h>#include <string.h>#...原创 2018-07-30 19:33:38 · 973 阅读 · 0 评论 -
数据结构严薇敏——KMP算法之next数组优化代码实现
前面实现的next数组依然还有缺陷,当模式串中失配元素很多相同的前缀,有一部分的比较是不需要的。例如下面这种情况可以明显看出:因为模式串中第1、2、3个字符和第4个字符都相等,因此不需要要再和第四个字符比较,而可以直接进行i = 5, j = 1时的字符比较,这里就是需要优化的部分。 实现代码:#include <stdio.h>#include <std...原创 2018-07-31 09:13:52 · 452 阅读 · 0 评论