【问题标题】:NFA that does not accept strings ending "101"不接受以“101”结尾的字符串的 NFA
【发布时间】:2021-04-07 13:47:37
【问题描述】:

什么是不接受以“101”结尾的字符串的 NFA?

【问题讨论】:

    标签: computation-theory finite-automata nfa non-deterministic


    【解决方案1】:

    有很多 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 结束。这些都是看到的最后三个符号的所有可能性,并且每个符号都会根据语言定义正确地使机器处于接受或不接受状态。

    【讨论】:

    • 我在问一个 NFA
    • @KmShrikanth DFA 是 NFA。我不确定使用确定性是否会在这里提供更简单的机器。也许它可以...?
    • 哦,是的,我在阅读时完全忽略了它。谢谢你帮我解决。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多