最左推导与最右推导


推导(derivation):从开始符号出发,每个重写步骤把一个非终结符号替换为它的某个产生式体。

最左推导(leftmost derivation):总是选择每个句型的最左非终结符号。

最右推导(rightmost derivation):总是选择每个句型的最右非终结符号。

 

看下面的产生式

E ::= E "+" E | E "*" E | "-" E | "(" E ")" | id

再看下面的串

-(id + id)

最左推导步骤

E => - E => - ( E ) => - ( E + E ) => - ( id + E ) => - ( id + id )

最右推导步骤

E => - E => - ( E ) => - ( E + E ) => - ( E + id ) => - ( id + id )

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM