https://www.bilibili.com/video/BV1mh41187fN/?spm_id_from=333.788.videocard.13
step1 : 正则到NFA
step2: 组织状态集合,子集法
step3:新状态命名规范化
step4:完成状态表-状态转化矩阵
tips:确定终止状态:看有没有Y
step6:根据状态转换表做DFA
step7: 化简:
初始拆分:结束态和其他的状态分成两组,看是否有到达交集
上图这一步将0和1 分开
但不能将0和2拆分,入下图
下图这一步将0和2拆分
再检查3456要不要拆分
走不同路径都指向同一个集合,确定最后的状态集合,就是化简后的状态集合
step8:重新命名,重新计算状态集合
注意这里的状态节点已经并起来了,所以在路径选择看到达状态的时候,要看原来状态属于哪个新的状态。所以下面的紫色的3指的是{3,4,5,6}这个新状态
step9:将化简后的状态转换图化成DFA
tips:新状态3是老状态的{3,4,5,6} 本身是终态,即最初里面是有y的,所以是终态。