KMP 字符串匹配算法
假设s1是待进行匹配的字符串,s2是具体匹配串。eg:s1 = "fegeahellodfskaf",s2 = "hello"。
相较于BF(Brute Force)算法,KMP算法利用了已匹配字串信息。它的实现方式分为两步,第一步,构造next数组;第二步,根据next数组决定后移位数,进行匹配。
1.构造next数组。
next数组是存储s2字串的最长前后缀长度信息的数组。eg:对于字符串“abcabd”,next[]存储的内容分别是[-1,0,0,0,1,2]。next[5]表示s2前面5个字符
原创
2020-06-01 16:30:38 ·
121 阅读 ·
0 评论