文件名称:NFA的确定化(NFA->DFA)(完整可运行代码)
文件大小:112KB
文件格式:DOC
更新时间:2021-09-30 11:24:15
NFA 编译原理 DFA
本程序的目的数据结构是一个储存所有子集集合的一个结构体,包含子集中所有的状态,利用邻接表实现。 算法正如书上所说,子集构造算法如下: 假定所构造的子集族为C,即C= (T1, T2,,... TI),其中T1, T2,,... TI为状态K的子集。 (1)开始,令-closure(K0)为C中唯一成员,并且它是未被标记的。 (2)while (C中存在尚未被标记的子集T)do { 标记T; for 每个输入字母a do { U:= -closure(move(T,a)); if U不在C中 then 将U作为未标记的子集加在C中 } } 输入文本格式样例: A B C D E F G H I J K L M N O P Q R S T # A a B C * D E a F G d H M a N O d P Q * M Q * O N * R P * R I * E I * G F * J H * J K * I J * L J * I K * L B * S S * K S * C D * T R * T L * Q