有限状态机模拟器
每行一条转移,如 q0,0,q0 或 q0 -0-> q0 或 q0 0 -> q1。NFA 目标可写多个,用 {q1,q2} 或 q1|q2;空转移可写 e、eps、epsilon、ε 或 @
机器类型:   输入格式:   初态:   终态:
测试串:   测试串来源:   字母表:   最大长度:
轨迹:   状态转移表:   :   分隔符:
计算结果 下载 CSV
序号 结果 状态 说明

工具介绍及使用方法

在线有限状态机(FSM)模拟器,把状态转移表粘进输入框就能模拟 DFA 与 NFA,结果同时给出表格与纯文本,可直接复制或导出 CSV。

输入格式(每行一条转移,三种写法都支持,默认自动识别):
1. q0,0,q0(逗号分隔);
2. q0 -0-> q0、q0 -a-> q1(箭头写法,符号可为空);
3. q0 0 -> q1(空格 + 箭头)。

关键参数:机器类型选 DFA 或 NFA;NFA 的目标状态可写多个,用 {q1,q2} 或 q1|q2。初态默认取第一条转移的源状态。终态用逗号分隔填写,留空表示没有终态。测试串填一条具体串;也可以选「枚举全部短串」,用字母表和最大长度自动生成。空转移符号支持 ε、eps、@。

结果包含三部分:规范化的状态转移表(同一「状态 + 符号」合并成一行,多目标全部列出)、每步的状态转移轨迹(NFA 用状态集合表示)、以及测试结果(是否接受、终止状态集合)。汇总区还会给出状态集合、字母表、初态、终态、确定性检测与可达性分析。

两点注意:同一「状态 + 符号」出现多个目标时不是 DFA,工具会明确提示而不是静默取第一个;碰到未定义的转移按「陷入死状态」处理并明确标注,测试串里出现字母表之外的符号也会单独提示。

留言板

全部留言 →
0/200

  • 还没人说话,来占个沙发?