Parsing 计算第一组语法?

Parsing 计算第一组语法?,parsing,set,grammar,recursive-descent,ll,Parsing,Set,Grammar,Recursive Descent,Ll,我有这个语法,我自己计算了第一个集合,但我不确定如何显示我的工作,因为我发现显示给我的方法太混乱了,但我知道如何获得集合,而不是如何显示我的工作 语法如下: S -> a a E | a E | S b , D -> E D d | c c | EPSILON , Y -> D E D | d , E -> a E D | EPSILON , 我的第一套是: first(S) = {a} first(D) = {a, c, epsilon} first(Y) = {d,

我有这个语法,我自己计算了第一个集合,但我不确定如何显示我的工作,因为我发现显示给我的方法太混乱了,但我知道如何获得集合,而不是如何显示我的工作

语法如下:

S -> a a E | a E | S b ,
D -> E D d | c c | EPSILON ,
Y -> D E D | d ,
E -> a E D | EPSILON ,
我的第一套是:

first(S) = {a}
first(D) = {a, c, epsilon}
first(Y) = {d, c, a, epsilon}
first(E) = {a, epsilon}

似乎你真的不知道怎么做。我建议遵循数百条关于该算法的在线描述中的一条。这里有一些


我认为你的答案不对
first(D)
包括
D
,因为
E
D
都可以是EPSILON。是的,我认为你的正确伴侣感谢你没有考虑EPSILON是否是chosenthanks的评论,但我知道怎么做,但有一个过程我被教如何做,包括一步一步地展示它是如何得到的