【问题标题】:How to determine the k value of an LL(k) grammar如何确定 LL(k) 文法的 k 值
【发布时间】:2016-08-22 15:18:22
【问题描述】:

假设我得到了语法

Z-> X

X-> Y
 -> b Y a

Y-> c
 -> c a

语法是LL(K),K值是多少?

我只知道它不是 LL(1),因为 Y 上存在预测集冲突,并且 LL(1) 语法预测集必须是不相交的。

【问题讨论】:

  • 答案和往常一样是 42。但是,对于某些小于 42 的 j 值,语法也是 LL(j)。
  • 我的考试中的 42 通常导致 0。
  • 免费的试题建议通常物有所值。
  • 但我们到了。

标签: parsing grammar context-free-grammar ll


【解决方案1】:

好的,很幸运,我的考试中没有这个问题。

正如我所提到的,预测集冲突意味着它不是 LL(1),接下来您只需观察确定生产值所需的最小前瞻次数。

在这种情况下是两个。

【讨论】:

    猜你喜欢
    • 2012-07-06
    • 2021-01-03
    • 1970-01-01
    • 2010-12-20
    相关资源
    最近更新 更多