刚开始学编译原理的时候,我对这三个概念真的很懵逼→_→
因为资料上的文字说明太不直观了,看了半天愣是很懵逼,于是往下看,看到了例子之后,就觉得明朗了许多!
上图!
这是一颗语法树,那如何求它的短语、简单短语和句柄呢?
我们按照 [句柄→简单短语→短语] 的顺序来找
首先:句柄(整棵树最左边的叶子,共1个)
a1
其次:简单短语(所有叶子,共6个)
a1, ε, b1, b2, a2, a3
最后:短语(所有的叶子+每个中间节点所包含的叶子序列, 共9个)
a1, ε, b1, b2, a2, a3,
a2a3, εb1b2, a1εb1b2a2a3
包含关系:短语 > 简单短语 > 句柄