【编译原理】first集/follow集/select集
1.左递归的消除
左递归: P->Pa|b P是以b开头后面若干个a(a个数>=1)的符号串
消除左递归:P->bP’ p’->aP’|ε
2.first集
求first(A)可理解为求由A能推出的第一个是什么(找能推出的符号串中为首的终结符或ε)
E -> T E'
E' -> + T E' | ε
T -> F T' | ε
T' -> * F T' | ε
F -> ( E ) | id**
A -> Bd
B -> ε | +B
例如以上:
first(E)={
ε , ( , id