- 2
- 0
- 约8.39千字
- 约 52页
- 2019-11-06 发布于湖北
- 举报
模式匹配——BF算法 设串S长度为n,串T长度为m,在匹配成功的情况下,考虑两种极端情况: 最坏情况:不成功的匹配都发生在串T的最后一个字符。 设匹配成功发生在si处,则在i-1趟不成功的匹配中共比较了(i-1)×m次,第i趟成功的匹配共比较了m次,所以总共比较了i×m次,因此 4.1 字符串 模式匹配——KMP算法 为什么BF算法时间性能低? 在每趟匹配不成功时存在大量回溯,没有利用已经部分匹配的结果。 如何在匹配不成功时主串不回溯? 主串不回溯,模式就需要向右滑动一段距离。 如何确定模式的滑动距离? 4.1 字符串 i=2,j=2失败; s[1]=t[1]; t[0]≠t[1] ∴t[0]≠s[1] 模式匹配——KMP算法 a b a b c a b c a c b a b i j 第 1 趟 a b c a c a b a b c a b c a c b a b 第 2 趟 a b c a c 4.1 字符串 i=2,j=2失败; s[1]=t[1]; t[0]≠t[1] ∴t[0]≠s[1] 模式匹配——KMP算法 a b a b c a b c a c b a b i
原创力文档

文档评论(0)