详讲KMP算法
Posted qzhc
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了详讲KMP算法相关的知识,希望对你有一定的参考价值。
两个字符串:
模式串:ababcaba
文本串:ababcabcbababcabacaba
KMP算法作用:快速在文本串中匹配到模式串
如果是穷举法的方式:
大家有发现,这样比效率很低的。
所以就需要使用一种高效率模式的算法:KMP算法。
大家有看到上面的穷举法,是一位一位的挪。那可以一次挪多位不就行了。像下面:
那么为什么可以这样挪呢? 模式串向右移动的距离 = 已匹配字符数 - 失配字符的上一位字符所对应的最大长度值
那么我们要怎么找出每位上的最大长度值呢呢? 我们来找一下。
所以,使用KMP算法进行挪位:
以上是关于详讲KMP算法的主要内容,如果未能解决你的问题,请参考以下文章