1
S -> 1S2 | S0 | 엡실론이것이 LL (1) 문법이 아닌 이유는 무엇입니까?
나는 그것을 결정할 수 있기 때문에 그것이 LL (1) 일 것이라고 생각했다. 예를 들어
는 다음 입력 기호가 0 인 경우 내가 그것을 S 있었는지 것 -> S0
엡실론 그것이 LL이 될 수 없음을 의미합니까 (1)?
S -> 1S2 | S0 | 엡실론이것이 LL (1) 문법이 아닌 이유는 무엇입니까?
나는 그것을 결정할 수 있기 때문에 그것이 LL (1) 일 것이라고 생각했다. 예를 들어
는 다음 입력 기호가 0 인 경우 내가 그것을 S 있었는지 것 -> S0
엡실론 그것이 LL이 될 수 없음을 의미합니까 (1)?
이 문법은 왼쪽 재귀가 있기 때문에 LL (1)이 아닙니다. 구문 분석기 테이블을 만들려고 할 때 충돌이 발생합니다.
당신이 그것을 주변에 직접 번째 태그를 추가 할 수 있습니다 - 당신은 0을봤을 때, 예를 들어 NLP –
을 항상'S0'를 선택할 것 논리에 의해 당신이 사용하지 않을 때문에 0이 아닌 것 영원히'S0'로 재귀하고 결코 엡실론을 찾지 못합니까? – FDinoff
그래서 S -> S0 -> S00 -> S000 -> e000입니까? 엡실론이 000e와 같아야하기 때문에 잘못된 것입니까? – user3562135