You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

请求协助绘制指定DFA:识别{a,b}上含偶数个b(或无b)的字符串

构建满足要求的DFA

核心逻辑梳理

需求本质是接受字母表{a,b}上不含字符b,或含偶数个b的所有字符串。无需3个状态,2个状态即可实现完整功能。

状态定义

  • S0:初始状态 + 接受状态。表示当前已读取的字符串中,b的数量为偶数(包括0个b的情况)。
  • S1:非接受状态。表示当前已读取的字符串中,b的数量为奇数。

状态转移规则

  • 处于S0时:
    • 读入a:b的数量不变,保持在S0
    • 读入b:b的数量变为奇数,转移到S1
  • 处于S1时:
    • 读入a:b的数量不变,保持在S1
    • 读入b:b的数量变为偶数,转移到S0

状态转移表

当前状态输入a输入b
S0S0S1
S1S1S0

示例验证

拿你给出的几个字符串测试:

  • a:从S0出发,读a后仍在S0(接受)
  • bb:S0→S1→S0(接受)
  • abb:S0→S0→S1→S0(接受)
  • bab:S0→S1→S1→S0(接受)
  • 反例b:S0→S1(不接受),bbb:S0→S1→S0→S1(不接受),完全符合需求

内容的提问来源于stack exchange,提问作者Kinglouis01

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 18:52:06