首页 > 编程语言 > 详细

字符串匹配算法

时间:2021-02-20 09:50:34      阅读:20      评论:0      收藏:0      [点我收藏+]

在实际工程中经常遇到这样的问题,在一起字符串里查找是否包含某个字符串,并且找到要找字符串所出现的位置。

让我们来举一个例子:

技术分享图片

在上图中,字符串B是A的子串,B第一次在A中出现的位置下标是2(字符串的首位下标是0),所以返回 2

技术分享图片

 字符串B在A中并不存在,所以返回 -1

 

常见的算法包括:BF(Brute Force,暴力检索)、RK(Robin-Karp,哈希检索)、KMP(教科书上最常见算法)、BM(Boyer Moore)、Sunday。

   1. BF(Brute Force,暴力检索)

   2. RK(Robin-Karp,哈希检索)

   3. KMP(Knuth-Morris-Pratt算法)

    kmp算法是一种改进的字符串匹配算法,由D.E.Knuth,J.H.Morris和V.R.Pratt同时发现

 

字符串匹配算法

原文:https://www.cnblogs.com/songgj/p/13380737.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!