所以我参加了编程语言课程,我们正在学习BNG(Backus Naur语法)和语法树语法。问题是教授只是喃喃自语,真的无法解释任何事情。如果你的家伙可以帮助确保我做对了,我会非常感激!
这是我想要了解的内容。
< S> :: =< X> < Y> < Z> | < Y> < Z>
< X> :: =< X> < T> | < T> < W>
< Y> :: = run |扔|跳
< Z> :: =< Z> < K> | < K>
< T> :: =迈克|起诉|泰德
< W> :: =史密斯|琼斯|米勒
< K> :: =围栏|绳子|球
a)用所有tip节点终端绘制语法树。
我的理解是"提示节点"表示"叶子节点之前的分支部分" (所以s,x,y,z,t,w和k)。所以我得到了这样的东西......使用所有" tip节点"。
b)使用至少三种不同的规则绘制另一个语法树。
我的理解是,对于每个"规则" S,X,Y ..等我必须选择不同的终端和非终端。这就是我得到的。
我很感激有人试图向我解释这个问题,我花了很长时间试图阅读我的书和笔记来理解这一点,但遗憾的是,我教授使用的词语和描述并没有与之相关。我的书或在线。
谢谢!