Изменения

Перейти к: навигация, поиск

LR(1)-разбор

10 байт добавлено, 15:21, 20 сентября 2015
Нет описания правки
Псевдокод построения множеств $closure$ и $goto$, а также множества ситуаций $items$:
<code>
Item[] closure(Item[] $I$):
'''bool''' changed
Item[] $J$ = $I$
</code>
<code>
Item[] goto(Item[] $I$, $X$):
Item[] $J=\varnothing$
'''for''' $[A\rightarrow\alpha\cdot X\beta, a]\in I$
'''for''' $X \in symbols(G')$ <font color="green">//по всем символам грамматики</font>
'''if''' $goto(I,X)\neq\varnothing$ and $goto(I,X)\not\subset C$
$C$.add($goto(I,X)$)
changed = ''true''
'''until''' not changed
'''return''' $C$
</code>
</wikitex>
Анонимный участник

Навигация