关于字符串匹配BM算法中好后缀的一些细节问题想请大家解答一下?
BM算法有坏字符匹配 和 好后缀匹配 ,我的问题在于好后缀匹配 :在《极x时间》上,看BM算法章节上,说好后缀算法可以单独使用,但我对此抱有疑问,
我认为只用好后缀会错过一些本应该成功的匹配,好后缀不能单独使用,
比如字符串匹配:
主串aabaaaa 匹配串 abaaa ,
第一次匹配 子串aabaa 和 模式串abaaa 时,好字符是aa ,
公共前后椎子串是:模式串前缀子串a,
所以:模式串a-baaa 对应 子串 aaba-a,
下一次 从 剩余的aaa 进行匹配 ,不是直接错过了?