문맥없는 문법의 "첫 번째 집합"을 찾으려고했습니다. 나는 2 개의 답을 찾았지만 그것이 맞는지 확실하지 않다. 누군가이 문법의 첫 번째 세트를 생성하는 방법을 설명 할 수 있다면 고마워 할 것입니다.문맥 자유 문법의 첫 번째 집합을 생성하는 방법
두 가지 대답은 내가 읽은 소스에서 다른 구문으로 설명했기 때문에 다른 방식으로 작성되었습니다. 문제
문법 :
E1 -> E2+E1|E2
E2 -> num*E2|num
내 첫 번째 대답 :
| A -> α | FIRST(α) |
|:----------- |------------:|
| E1 -> E2+E1 | {num, num} |
| E1 -> E2 | {num, num} |
| E2 -> num*E2 | {num} |
| E2 -> num | {num} |
내 두 번째 대답은
FIRST(E1) = {num}
FIRST(E2) = {num}
내가 미리 감사드립니다.
그냥 명확히하기 위해 "첫 번째 세트"테이블이 맞습니까? @templatetypedef – fs2ly
@ReeLink 네! 맞습니다. – templatetypedef