怎样为“逗号分隔的左结合的标志符列表”构建无二义性的上下文无关文法?

是道编译原理题,最关键的就是“无二义性”,我写出的都有二义性,不知道该怎么消除
我题目不是写的清清楚楚在标题里,什么叫做没具体的题目啊?一楼的怎么搞的啊
拜托一楼的,这是著名教材的习题,绝对有解,你不要自己不会就说题目错了好吧,我都无语了。。你不会的话为什么要回答呀,骗分呀,鄙视

这段话时龙书上的原话:

   依照惯例,9+5+2等价于(9+5)+2,9-5-2等价于(9-5)-2.当一个运算分量(比如上式中的5)的左右两侧都优于氨酸时,我们需要一些规则来决定哪个运算符被应用于该运算分量。我们说运算符”+“是左结合(associate)的,因为当一个运算分量左右两侧都有”+“号时,它属于其左边的运算符。在大多数程序设计语言中,加减乘除四种算术运算符都是左结合的。

 某些常用的运算符是右结合偶的,比如指数运算符。作为另一个例子,C语言中的赋值运算符”=“及其后裔(即+=,-=等译者注)也是右结合的。对表达式a=b=c的处理和对表达式a=(b=c)的处理相同。带有右结合运算符的串,比如a=b=c,可以由如下文法产生;

   right = letter = right | letter

   letter = a|...........|z


这是一个左结合的分析树,它向左下端延伸。

这是右结合的分析树,它向右下方延伸。


所以你的答案为  list ——> list , a | a.

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-12-30
参考答案: ★ 月亮升上来了,像是刚刚脱水而出的玉轮冰盘,不染纤尘。本回答被提问者采纳
相似回答