那里有这么多的信息,但这不是真的有助于像我这样的noob。我阅读了许多关于上下文无关语言和下推自动化的文章。现在我试图了解代码中可能会看到某些东西。CFG生产规则在代码中的外观如何?
让我们假设我们定义的语言,如:
L = {am bn | m >= n}
给我们以下的生产规则:
S -> B |^
B -> aBb | A
A -> aA | a
正是这将如何看起来像伪代码?我假定所有的生产规则都是1状态定义为S1或者都是单独的状态?无论哪种方式,我不知道,如果有人能帮助我理解这是如何工作的,这将是非常好的。
我知道我们分析了一个输入的字符,并且取决于输入的是什么输入,其中一个规则适用于将一个符号推入我们的PDA堆栈。
什么,具体来说,你想要你的代码吗?请明确点。 CFG描述语言。你想让你的代码输出分析树吗?你想让你的代码识别语言中的字符串吗?或者生成它们?如果生成它们,哪些?你没有时间全部生成它们。 – Patrick87
您的生产规则仅生成m> n的字符串,这种平等是不可能的。正如帕特里克所说,如果你想要一个算法,你应该明确指出哪个问题。 –
@PeterLeupold好的我今天会更新我的问题。你是对的,很多信息都不见了,我会编辑我的例子。 – Asperger