sunday算法和自己关于字符串匹配的一些思考
来源:互联网 发布:淘宝电器以旧换新 编辑:程序博客网 时间:2024/05/17 05:59
Sunday算法与kmp算法比较起来,更易理解,更容易实现,更重要的是kmp算法其实在实际运用中,并没有表现出来多大的效果。
所以Sunday算法就出来了。Sunday算法核心就是跳过更多的不需要比较的字符,我们可以考虑,字符串:s1,s2,i为指向s1的指针,j为指向s2的指针。
s1[i]!=s2[j],则传统的是我们要从s1[i]和s2[0]开始比较,这样其实太不理智,我们可以逆向思维,从后往前考虑,那么s2对应的s1后面的一个字符,如果和s2中从后往前的一个字符匹配,那么就可以分别移位到两个位置上去,反之没可能,则继续向下一个位置。
public static bool sunday(string str1,string str2) { int i = 0,j=0; while (i < str1.Length && j < str2.Length&&str1.Length-i-1>str2.Length) { if (str1[i] == str2[j]) { if (j == str2.Length) { //匹配成功 break; } i++; j++; } else { int k = 0; int s = i; while (str2[k++]!=str1[s+str2.Length]&&s<str1.Length) { if (k >= str2.Length) { s++; } } if (i == str1.Length) break; j = s - k; i = j; } } return true; }
0 0
- sunday算法和自己关于字符串匹配的一些思考
- 关于字符串匹配Sunday算法的个人想法
- 字符串匹配---Sunday算法
- 字符串匹配Sunday算法
- 字符串匹配-sunday算法
- 字符串匹配--Sunday算法
- 字符串匹配 sunday算法
- 字符串匹配sunday算法
- Sunday 字符串匹配算法
- Sunday字符串匹配算法
- 字符串匹配-Sunday算法
- 字符串匹配:kmp,bm和sunday算法
- 字符串的模式匹配:Sunday 算法
- 字符串单匹配SUNDAY算法
- 字符串模式匹配:Sunday算法
- 字符串匹配之sunday算法
- 字符串匹配Sunday算法实现
- 字符串匹配Sunday算法实现
- ubuntu14.04+ROS indigo+kinectV1 骨骼点检测
- Window,WindowManager学习总结
- 多线程
- 中文乱码问题,Eclipse能正常显示,但在tomcat部署工程中不行
- HDU 1532 Drainage Ditches (最大流模板)
- sunday算法和自己关于字符串匹配的一些思考
- struts2表单提交的中文参数后台乱码问题解决
- 模拟实现strcat strncat函数
- Unable to negotiate with legacyhost: no matching key exchange method found.
- 003:Java's +=, -=, *=, /= compound assignment operators
- 文章标题
- 邮件、短信分享 推荐、电话
- Server Tomcat v7.0 Server at localhost was unable to start within 45 seconds. If
- 一个简单的列表排序 还有模糊搜索