考虑一个 DFA 接受 {a, b} 上的所有字符串,其中 a 的 mod 3 = 2 的数量和 b 的数量是奇数。
这种 DFA 的最少状态数是多少?
(一) 4
(乙) 2
(三) 6
(四) 8答案: (C)
解释:
上面的问题是产品自动机的一个例子。如果我们有两个案例,我们可以有单独的 DFA,我们可以通过产品自动机合并这两个案例。生成的 DFA 的状态数等于各个 DFA 状态的乘积。
这里 DFA 用于接受 {a, b} 上的所有字符串,其中 a 的 mod 3 = 2 的数量将有 3 个状态。 (a 的 mod 3 的数量将给出余数 0, 1, 2 所以 3 个状态来描述每个)。
类似地,DFA 接受 {a, b} 上的所有字符串,其中 b 的数量是奇数(b 的数量 mod 2 = 0)将有 2 个状态。
因此,这两个条件的最终 DFA 将具有 2*3 = 6 个状态。
这个问题的测验