摘要: KMP是一个有关字符串匹配的算法,之前一直听过,但是从来没有好好学习过,今天有幸能和大神学习了KMP,心情异常之好,所以要写下学习记录和总结。首先,描述一下KMP所要解决的问题:有一个字符串,我们称它为原串S,S的长度为n;现在,有一个字符串s,s的长度为k,要判断s是不是S的子串。那么比较朴素的算法就是暴力求解,即从S的第一个字符开始一次判断后面的k个字符和s是否相等,当然这里n是大于等于k的。这样看来时间复杂度应该是O(n*k)。那么如果是很多字符串的匹配的话,比如要判断1000个字符串是不是S的子串,那么就是1000*k*n这大的数据,如果n和k的值再大一些(原串一般在10^5左右,需要 阅读全文
posted @ 2013-03-24 23:06 AClion 阅读(260) 评论(2) 推荐(1) 编辑