数据结构:第四章学习小结

数据结构第四章学习的是串,数组和广义表

串的定义其实在c++学习中就有所接触,所以这里不详说,重点说的是两个串模式匹配算法

1.BF算法

BF算法的思想就是将目标串S的第一个字符与模式串T的第一个字符进行匹配,若相等,则继续比较S的第二个字符和T的第二个字符;

若不相等,则比较S的第二个字符和T的第一个字符,依次比较下去,直到得出最后的匹配结果。BF算法是一种蛮力算法。

2.KMP算法

KMP算法的关键是利用匹配失败后的信息,尽量减少模式串与主串的匹配次数以达到快速匹配的目的。

具体实现就是实现一个next()函数,函数本身包含了模式串的局部匹配信息。时间复杂度O(m+n)。

原文地址:https://www.cnblogs.com/JXZ001031/p/12833792.html