【发布时间】:2021-04-07 13:47:37
【问题描述】:
什么是不接受以“101”结尾的字符串的 NFA?
【问题讨论】:
标签: computation-theory finite-automata nfa non-deterministic
什么是不接受以“101”结尾的字符串的 NFA?
【问题讨论】:
标签: computation-theory finite-automata nfa non-deterministic
有很多 NFA(实际上是无限多)有效。这是一个简单的:
/0-\ /1-+--------+--------+
\ | \ | 1 1
\ V \ V | |
----->[q0]--1-->[q1]--0-->[q2]--1-->q3
^ | ^ |
| | | |
\-------------0----/ \--0---/
这个 NFA 恰好也是一个完全确定性的 DFA。没关系。此 DFA 通过跟踪三个最近遇到的输入符号来工作。如果最近遇到的三个是 000 或 100,则机器将最终处于状态 q0。如果最近遇到的三个是 111、011 或 001,则机器将最终处于状态 q1。如果最近遇到的三个是 010 或 110,则机器将最终处于状态 q2。如果最近遇到的三个是 101,则机器将在 q3 结束。这些都是看到的最后三个符号的所有可能性,并且每个符号都会根据语言定义正确地使机器处于接受或不接受状态。
【讨论】: