- 博客(2)
- 收藏
- 关注
原创 一个Aho-Corasick算法的C++实现
介绍:Aho Corasick算法,简单的说就是用来在一个“大字符串”中查找精确匹配的某些“小字符串”的,发明者是Alfred V. Aho和Margaret J. Corasick。(向两位前辈致敬,orz)这个算法的牛逼之处在于,只需要一次遍历便可以找出所有匹配的“小字符串”,因此算法复杂度为O(n+m+z)。而一个普通的匹配算法可能需要O(n+km)。n = 所有“小字符串”的累
2009-10-30 00:14:00
1181
原创 一个简单LR编译器的C++实现
今天看到wiki上说手动编写LR编译器非常困难,一般都是由生成器自动生成。就想试一把,找了一个最简单的上下文无关文法,写了个小程序。可能因为我选的文法太简单了吧,发现写LR编译器也没有那么困难。接下来准备挑战一个相对比较复杂的编程语言。 文法:G = (V,E,R,S)V = {S,+}E = {1,a}R = { S->S+S S->1 S->a}S
2009-10-21 20:46:00
933
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人