最左推導、最右推導及其語法樹構建

相關文章

消除左遞歸及提取左公因子
最左推導、最右推導及其語法樹構建
FIRST集合、FOLLOW集合以及LL(1)文法

最左推導

定義

在最左推導中,總是選擇每個句型的最左非終結符號。

[句型] 如果S=》a,其中S是文法G的開始符號,我們可以稱a是G的一個句型,當a是一個終結符時,此時這個句型可以稱為句子。

[非終結符號] 可以繼續向下推導的符號

例子

有文法:

E -> E +E | E * E | - E | ( E ) | id

需要推出串 - ( id + id)

根據左推導定義,有

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

語法樹

最左推導

最右推導

定義

在最右推導中,總是選擇每個句型的最右非終結符號。

例子

有文法:

E -> E +E | E * E | - E | ( E ) | id

需要推出串 - ( id + id)

根據左推導定義,有

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

語法樹

最右推導
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容