超级简单的理解kmp算法中的next的计算
来源:互联网 发布:淘宝微淘怎么发布盖楼 编辑:程序博客网 时间:2024/05/18 00:25
发现很多KMP算法的next求解兼职让人忧伤,图一大堆,全是没讲清楚.说白了,还是公式推导啊各种,你让咱们程序员怎么懂你啊?
1.普通求解字符串匹配 暴力破解
接下来愚公移山 来自http://www.cnblogs.com/yjiyjige/p/3263858.html
该算法很简单 按照顺序匹配 比如求abc(j) 是否在 bbabc(i)中,
1. 匹配 a != b (i=0)
2. 继续匹配 a != b (i=1)
3. a = a (i=2)
4. b = b (i=3)
5. c = c (i =4) ok!
public static int bf(String ts, String ps) {
char[] t = ts.toCharArray(); char[] p = ps.toCharArray();int i = 0; // 主串的位置int j = 0; // 模式串的位置while (i < t.length && j < p.length) { if (t[i] == p[j]) { // 当两个字符相同,就比较下一个 i++; j++; } else { i = i - j + 1; // 一旦不匹配,i后退 j = 0; // j归0 }}if (j == p.length) { return i - j;} else { return -1;}
}
接下来来个简单的图 感谢刚才愚公移山的博主的图!
- (http://img.blog.csdn.net/20160525133248811 点击看大图
- 知道next如何求解 ,接下来对于KMP算法就非常简单啦
0 0
- 超级简单的理解kmp算法中的next的计算
- 对kmp算法next数组的一些简单理解
- KMP算法的next数组计算原理
- KMP算法next数组的计算
- KMP算法的next、next value数组的手工计算
- KMP算法next数组的理解
- KMP算法对next数组的理解
- KMP算法中的NEXT数组的应用
- KMP算法中的next函数的证明
- KMP算法中的Next数组的求取
- KMP中的next和nextval的算法
- KMP算法next数组计算的理解——菜鸟福音
- 简单的理解KMP算法
- KMP算法next计算
- 手动计算KMP算法的Next数组与NextVal数组
- KMP算法中特征值数组next的计算与使用
- KMP算法中next数组、nextval数组的手工计算
- KMP--next数组的理解
- 新EventHandler
- 第七届 科技节 电子设计大赛 三等奖作品---超声波测距
- 初步找好外贸电商平台
- linux gz bz2解压命令
- <Android 基础(二)> BroadcastReceiver
- 超级简单的理解kmp算法中的next的计算
- Java学习之路(第二天)
- 使用gitblit在windows上部署git服务器
- 使用ICE建立C++与C#的通讯
- vm linux 换了地方ping不同网关和外网
- python标准模块学习1_______fnmatch模块
- 偏好设置存储
- 思
- 黑马程序员——java基础---位移运算符和键盘录入和switch语句