Недавно я столкнулся с интересной проблемой, в которой мне пришлось устранить левую рекурсию, а затем найти первый и последующие наборы задачи ниже.Может ли кто-нибудь подтвердить, что я сделал правильно, или сказать, что я сделал не так?
Eliminate Left Recursion:
A -> B | c
B -> C | a
C -> A | b
Simplified:
A -> A | b | a | c
My answer:
A -> aA' | bA' | cA'
A' -> A' | Epsilon
First & Follow sets:
First (A) = {a, b, c}
First (B) = {a, b, c}
First (C) = {a, b, c}
Follow(A) = {$}
Follow(B) = { }
Follow(C) = { }