引言:最左DFS/最左BFS都是回溯(backtracking)型解析算法
另一种解析算法是预测型算法——向前看几个输入,预测使用哪个产生式。包括:递归下降解析、LL(1)解析
一、LL(1)grammar
(说明):第一个L是left-to-right,从左向右扫描;第二个L是leftmost derivation(最左派生);(1)表示向前看至多1个token
~解析总是从起始符号开始的
(一)lookahead set
【注】first集和follow集中放的一定是终结符
————————————Ⅰ.first集———————————
1.就是经过一系列推导后出现的第一个终结符
2.终结符的first集就是它本身,非终结符的first集就是它传递闭包的所有首终结符的集合
3.如果一个非终结符的所有产生式的first集都没有交集,即,则该文法是可预测解析的。
————————————Ⅱ.follow集——————————
1.A的follow集就该文法的所有句型中跟在A后面的那个终结符的集合
整理不易,亲亲点个赞呗~~