- 博客(2)
- 收藏
- 关注
原创 Boyer-Moore-Horspool 算法(出现启发式规则)
在第一次匹配中,主串T与模式串P发生了不匹配,此时模式串的最后一个字符为P[3]对应的主串字符为T[3],故在模式串除最后一个字符外的剩余字符串P[0-2]中从后往前找到与T[3]相同的字符,为P[1]。将P[1]与T[3]对齐,可以发现匹配成功了。通俗来说就是,如果模式串与主串不匹配,则在模式串除了最后一个字符的剩余字符串中,从后往前找到与模式串最后一个字符对应的主串字符相同的字符,并将这两个字符对齐。可以看出此时P[0-2]中并没有与T[3]相同的字符。字符串匹配的顺序既能从头到尾,也能从尾到头。
2022-11-28 22:11:21
310
1
原创 朴素逆向匹配算法
朴素匹配算法是从P[0]开始一个一个进行比较。P[0]与S[0]比较,P[1]与S[1]比较......那我们换个角度想一想,能不能从尾部开始比较呢?答案当然是可以的同样的位置,我们先比较P[6]与S[6],如果相等则再比较P[5]和S[5].....这种比较方法就叫朴素逆向匹配算法,它与朴素匹配算法的区别在于它是从模式串的最后一位开始比较的,当然如果匹配失败则将模式串向右移动一位。
2022-11-28 21:42:27
216
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人