算法:LL(1)

预测分析法:LL(k)

  • L:left-to-right 从左到右扫描

  • L:left-most 最左推导

  • K:向前看k个符号,实践当中,通常k=1,即LL(1)

每次为最左边的非终结符号选择产生式时,向前看1个输入符号,预测要使用的产生式。

LL(1)文法

构造LL(1)分析表

  • 非终结符作行,终结符作列

  • 如果一个非终结符的first集里没有空串,则在(非终结符,非终结符first集内的终结符)处填上对应的产生式

  • 如果一个非终结符的first集中有空串,则在(非终结符,非终结符follow集内的终结符)处填上对应的产生式

根据LL(1)分析表,给出一个符号串的分析过程:aad1$

Last updated