跳到主要内容

字符串搜索

目的

有两字符串,模式串(pattern)文本串(text)
要求在文本串中找到模式串的位置

性能对比

图中Shit-or又叫Bitap
Naive实际上是Brute-Force

字符串搜索性能对比

算法时间复杂度(平均)时间复杂度(最坏)时间复杂度(最好)空间复杂度稳定性复杂性
BFO(mn)O(mn)O(mn)O(mn)O(n)O(n)O(1)O(1)稳定简单
BitapO(mn)O(mn)O(mn)O(mn)O(n)O(n)O(m)O(m)稳定中等
KMPO(n+m)O(n+m)O(n+m)O(n+m)O(n)O(n)O(m)O(m)稳定中等
BMO(nm)O(\frac{n}{m})O(mn)O(mn)O(n)O(n)O(m)O(m)稳定较高