Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有这个练习,它给了我一个语法并要求证明它不是一个LL(1). 这部分很好,尽管之后它问我这个语法是否可以LL(k)(for k>1)。我要遵循什么程序来确定?
LL(1)
LL(k)(for k>1)
对于给定k的非左递归语法,您所要做的就是构建LA(k)表(通过随处可用的算法)。如果没有歧义,则语法是LL(k),语言也是。
k
LA(k)
LL(k)
知道是否存在一个k给定语言LL(k)是不可判定的。你必须一个接一个地尝试一个值,k直到你成功,或者宇宙耗尽。