0
The Grammar is:在LR解析中難以解決這個例子?
S→(L) ID
L→S | L,S
我試圖計算CLOSURE和GOTO對給定的語法使用LR解析。
我們的老師解決了這個,但在第一個步驟,他沒有使用第二個生產L-->S|L,S
,我不知道爲什麼。 所以我解決了同樣的例子,但在第一步uisng完整的語法。
由此,原單隻有9
步驟,但我的是10
步驟。
我的問題是,我的解決方案是否正確?我想我做了LR(1)。
+1,謝謝你的回答。我構建瞭解析表並在考試中解析了句子id + id *(id)'。教師應該將整個問題標記爲錯誤還是隻將第一部分標記爲錯誤? 再次感謝您的提示。 – 2014-09-22 05:22:59
@Caffè:我對你的老師的標記算法可能不會有任何評論:)你的狀態表將(可能)構造出正確的解析,因爲儘管你錯誤地把'L - >(L)| id'置於狀態1,將會在該狀態下嘗試'GOTO(L)'。 (你能看出爲什麼不?)。因此,你的狀態10是無法訪問的,在這種情況下,錯誤是無關緊要的。然而,一般來說,這個錯誤可能會導致明顯的轉換/減少或減少/減少衝突,這顯然會影響解析。無論如何,祝你好運。 – rici 2014-09-22 05:34:08
是的,你說得對。我也注意到,它並沒有影響我的解析表。我希望他明白我的所作所爲。 – 2014-09-22 05:40:40