对于Σ= {a,b,c,d,e,...,z},考虑单词w的集合L,使得w的最后一个符号之前没有出现。例如,单词apple,google,k和ε都在L中,但单词potato和营养不在L.假设我们想为这种语言构建DFA。它会有多少个州(最低限度)?简洁地描述DFA:不要试图绘制它,而是使用合适的数学符号解释其正式定义(例如状态和转换)。
我不需要整个定义,只需要了解它将拥有多少个状态以及为什么。从那里我很自信我能搞清楚。
答案 0 :(得分:0)
一些提示:
对于每个可能的Σ子集,您将需要一个状态,以便您可以跟踪到目前为止看到的字符。
对于Σ的每个子集,您需要另一个状态来表示“这组字符,其中读取的最后一个字符恰好在集合中。”
我会把剩下的细节留给你,你必须考虑如何正式证明这是正确的。
希望这有帮助!