【问题标题】:Need help constructing a deterministic finite automata?需要帮助构建确定性有限自动机吗?
【发布时间】:2011-09-26 02:41:31
【问题描述】:

以图的形式构造确定性有限自动机的规则是什么?我的教授通过示例进行了解释,但我不确定所有图表必须遵循哪些规则。任何帮助表示赞赏,谢谢!

【问题讨论】:

    标签: grammar context-free-grammar finite-automata deterministic


    【解决方案1】:

    在我的脑海中,在 DFA 中,这些是主要规则,(特定于 DFA 的术语用双引号括起来):-

    • 对于 DFA 中定义的每个“输入”,每个“状态”都必须有一个“转换”
      所以这意味着,必须为 dfa 中考虑的每个输入定义一个转换,为一个状态,以便知道每个输入从该状态到哪里去。

    • 每个“状态”对于每个“输入”只能有一个“转换”
      好吧,这条规则很容易解释,所以如果您已经为特定状态的输入定义了转换,请不要为来自同一状态的相同输入创建另一个转换。

    是的,这些是我记得的。希望能帮助到你。此外,这些点可用于区分 dfa 和 nfa。其他简单的绘图规则是:-

    • 创建一个起始状态,用指向该状态的箭头指示

    • 至少有一个最终状态,用同心圆表示以绘制状态边界

    • 将过渡绘制为箭头

    • 用各自的输入符号标记所有转换

    【讨论】:

    • 我想知道的一件事,假设有一种语言由两个输入组成,{a, b}。起始状态是否必须同时分支到 a 和 b?之后的每个状态是否都必须有 a 和 b 输出,还是只是起点的强制性?
    • 如果有帮助,或者您想要更好的答案,请告诉我!!
    • 是的,所有状态都需要为每个输入、开始状态或介于两者之间的任何状态或最终接受状态都有分支
    • @HQuser,是的,答案中也提到了这一点,特别是第一点:each "state" must have a "transition" for each "input" defined in the DFA
    • @HQuser,我猜你对我的评论投了赞成票,这很好,但如果我的回答对你有帮助,请考虑投票:) 抱歉,如果你觉得这不礼貌。
    猜你喜欢
    • 2023-03-30
    • 2019-06-23
    • 1970-01-01
    • 1970-01-01
    • 2011-08-26
    • 2013-11-29
    • 1970-01-01
    • 1970-01-01
    • 2013-04-28
    相关资源
    最近更新 更多