编译原理
简单的对概念理解
秃菜鸟
这个作者很懒,什么都没留下…
展开
-
正规式转NFA
#include<iostream>#include<cstring>#include<string>#include<stack>#include<vector>#include<set>#include<queue>#define MAX 128using namespace std;typedef set<int> IntSet;typedef set<char> Ch转载 2020-12-16 21:17:33 · 1591 阅读 · 0 评论 -
基于DFA的单词识别
基于DFA的单词识别问题的一种描述是:编写一个程序,输入一个确定的有穷自动机(DFA),使用该DFA识别单词。【基本要求】设置DFA初始状态X,终态Y,过程态用数字表示:0 1 2 3………【输入形式】标准输入【输出形式】标准输出【样例输入】a b#X Y 0 2#X X-a->0 X-b->XY Y-a->0 Y-b->X0 0-a->0 0-b->22 2-a->0 2-b->Yabb#ba#aca#【样例输出】abbp原创 2020-12-16 21:08:13 · 1073 阅读 · 0 评论 -
求FIRST集和FOLLOW集SELECT集合
设G=(V T ,V N ,S,P)是一个上下文无关文法。VT表示终结符,VN表示非终结符。FIRST集定义如下:对于α可以有两种表达式:下面开始构造每个文法符号的FIRST集合对于每一个X∈VT∪VN,连续使用下面规则,知道每个集合的FIRST不再增大为止:1.X∈VT,则有FIRST(X)={X}。2.X∈VN,且有产生式X→а…,则把а加入到FIRST(X)中;若X→ε也是一条产生式,则把ε也加入到FIRST(X)中。3.①若X→Y…是一个产生式,且有产生式Y∈VN,则把FIRST(原创 2020-12-16 13:51:32 · 447 阅读 · 1 评论