KMP字符串匹配
KMP字符串匹配
設文本為字符串T,長度為n;模板為字符串P,長度為m;並有n>=m。
KMP算法的複雜度為O(m+n),O(m)為模板預處理時間,O(n)為查找匹配所用時間。
傳統的暴力匹配未能利用已匹配部分的信息,效率低下。
KMP的核心在於構造狀態轉換圖,可用失配函數表示。
對比見下圖。
最後更新:2017-04-03 07:56:55
設文本為字符串T,長度為n;模板為字符串P,長度為m;並有n>=m。
KMP算法的複雜度為O(m+n),O(m)為模板預處理時間,O(n)為查找匹配所用時間。
傳統的暴力匹配未能利用已匹配部分的信息,效率低下。
KMP的核心在於構造狀態轉換圖,可用失配函數表示。
對比見下圖。
最後更新:2017-04-03 07:56:55