让我们假设我有以下语法:
S → X
X → a | ϵ如果该语法不涉及ϵ,我将构造第一个状态,如:
S' → .S
S → .X
X → .a但是ϵ符号呢?我是否应包括:
X → .ϵ也是吗?
如果是的话..。在创建下一个州时..。我应该做GOTO(Io,ϵ)**,作为第一个州吗?**
发布于 2011-06-28 04:44:56
因为ϵ本身并不是终端,所以您必须将它从规则中删除,这给了您
X → .之后,您将不会有任何带有“符号”GOTO的奇怪ϵ,而是您的状态。
S' → S.是图形中的接受状态。
发布于 2012-04-28 07:04:24
我同意霍华德的观点。DFA中的状态应该包含项:x → .,这是我为SLR(1)解析器绘制的DFA,它识别使用两个epsilon结果的语法:

https://stackoverflow.com/questions/6501399
复制相似问题