编译原理课的大作业 包含三个小实验 在一个cpp文件里 正则表达式转换为nfa nfa转换为dfa dfa最小化 个人原创代码
2019-12-21 21:53:43 13KB 编译原理 NFA DFA
1
编译原理 词法分析 语法分析Java版【NFA DFA DFA最小化】【添加注释版】
2019-12-21 21:32:22 229KB NFA DFA DFA最小化 编译原理
1
用C语言实现NFA到DFA的转换过程 NFA (nondeterministic finite-state automata)是不确定性有限状态自动机的简写,NFA的定义为: 一个不确定性有限状态自动机由以下部分所组成: A. 一个有限的输入字符集I B. 一个有限的状态集S C. 状态转换函数f: S x I -> P(S),P(S)为s的幂集 D. 一个结束状态集Q,Q是S的子集 E. 一个初始状态s0 (属于S) F. 表示为A(I, S, f, Q, s0) 与NFA相对应,DFA (deterministic finite-state automata)表示确定性有限状态自动机。与NFA不同,DFA不存在Epsilon转换,并且每一个状态转换函数的值只对应一个状态,即一个状态输入一个字符,只能有一个状态相对应。 NFA与DFA的区别 显然,DFA更加适合我们进行字符串匹配,因为输入一个字符,总能从一个状态确定地转换为另一个状态,直到终结状态。NFA一个输入可能对应多个状态,因此需要进行回溯,先尝试一条路径,发现走不通,再回退到原来的状态尝试另外一条路径,显然匹配算法不如DFA简单。 给定一个NFA,总有一个DFA与之对应,即一个NFA可以转换成一个等价的DFA,我们将使用子集构造算法实现NFA到DFA的转换。
2019-12-21 21:05:41 3KB NFA_DAFA
1
用VC 6.0运行,完美编译运行,反正我们老师检查是完美的过
2019-12-21 20:29:17 21KB c++ 正则表达式 NFA DFA
1
自己用C语言做的NFA到DFA的转换 有较为详细的备注,希望有所帮助。
2019-12-21 19:56:53 205KB DFA NFA 编译 c语言
1
自己用python做的编译原理作业,代码有点冗余,没有完善,顺利通过老师检查 编译原理(由字母表通过运用调度场算法到逆波兰表达式到NFA到DFA到最小化DFA),python,graphiviz实现可视化
2019-12-21 19:33:55 57KB python graphiviz 编译原理 DFA
1
正规文法_NFA_DFA之间的转换实现 有界面
2019-12-21 18:58:11 924KB 正规文法_NFA_DFA之间的转换实现
1
已知一个正则表达式,把它转化为nfa,nfa转化为dfa,dfa最小化 用vc6.0完成的,可以立马用,很好很强大!
2019-12-21 18:56:13 6KB nfa dfa dfa最小化
1