构造用于语言的DFA:所有以1开头的字符串都必须包含11作为子字符串,如果为0,则必须为奇数

问题描述

我必须为一种语言构建DFA:

  1. 所有字符串均以1开头。
  2. 必须包含11个子字符串
  3. 如果0到了,那一定是奇数。

示例:

11     // Valid. 
1011   // Valid.
1000011 //Valid.

1 //Invalid.
10 //Invalid.
1010   // Invalid.
100001 //Invalid.

我尝试了很多,但是没有成功。

解决方法

这是您提出问题的DFA。

它满足所有三个条件:

  1. 所有字符串均以1开头
  2. 必须包含11个子字符串
  3. 如果为0,则必须为奇数。

DFA

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...