上下文无关文法
定义:
分别是:终结符集合(非空);非终结符集合(非空);文法的开始符号;产生式集合(有限)
自下而上
算符优先分析法,LR分析法
从树叶节点开始构造语法树
归约:右部替换为左部符号
自上而下
递归下降分析法,预测分析程序
从根节点开始构造语法树
推导:左部替换为右部符号
问题:回溯(多个产生式候选)
解决:
回溯的解决,本人的理解是,因为有多个选择方案,不断的尝试第一个匹配就进行下一步匹配,在遇到错误时,就回到上一阶段从该点的下一个点匹配这一阶段的字符,这会带来巨大的开销。关键点在于如何准确的去匹配,尤其是在消除左递归后引入后。