两个字符串搜索算法

今天看了两个字符串匹配算法,一个是BM(Boya-Morre),另一个则是KMP(Presented by DE.Knuth, V.R.Pratt and J.H.Morris)。看来我真是有些孤陋寡闻,以前都不知道这两个算法是做什么的。好像二分图匹配里也有一个KMP差不多名字的算法来着。
BM算法还比较好懂,因为比较简单嘛。实现时需要注意某个细节。具体代码具体分析。
善于KMP算法,我主要读的是两篇网络文章,分别是http://www.kuqin.com/algorithm/20080721/11844.html 和http://blog.csdn.net/liuben/archive/2009/08/04/4409505.aspx 。前者写得非常好懂,让我一下子就明白是怎么回事了。后者则写得有些学究气,而且细节上还至少有两处错误。不过文章结构挺好的。
这两个算法的原理我算是基本上弄懂了,具体代码实现还不一定会。
后面那篇文章通过DFA来解释了KMP的原理,我感觉自己还不是很理解。我对于自动机理论不太懂。改天再学习下。
看算法真是费时间,转眼就到晚上十点钟了,两个多小时一晃即过。明晚要下去运动运动。

posted on 2011-04-13 22:42  Joshua Leung  阅读(190)  评论(0编辑  收藏  举报

导航