簡體   English   中英

計算語法的 FIRST & FOLLOW 集

[英]Computing the FIRST & FOLLOW sets of a grammar

我有以下語法:

S -> aXab
S -> Y
X -> bYa
X -> epsilon
Y -> Sc

我已經計算了這個語法的第一個和后續集合,我想知道它是否正確。 這是我的解決方案:

First Sets:
S -> {a} 
X -> {b,epsilon}
Y -> {a}

Follow Sets:
S -> {$,c} 
X -> {a}
Y -> {c,a}

任何幫助表示贊賞。 謝謝。

第一組是正確的。 FOLLOW(Y) 應該是 {$,c,a}

FOLLOW(A) 定義是

FOLLOW(A) of non-terminal A is the set of terminal symbols that can follow in the   
derivation sequence

FOLLOW(Y),檢查它在右手邊的位置

        1) X -> bYa

當此產生式用於推導時,Y 后面的內容是“a”

        2) S -> Y

當這個產生式被用於推導時,Y 之后是什么,S 之后是什么。 FOLLOW(S)={$,c}

     FOLLOW(Y)={$,a,c}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM