Parsing 如何认识;语法是一个OPG;不建立优先矩阵?

Parsing 如何认识;语法是一个OPG;不建立优先矩阵?,parsing,grammar,operator-precedence,Parsing,Grammar,Operator Precedence,给定满足以下两个条件的语法 没有相邻的非终端 没有“S->epsilon”形式的规则 通过建立优先矩阵,我们可以认识到这种语法是一种运算符优先语法(OPG),如果每个终端对最多有一个关系() 那么,有没有另一种方法可以在不构建优先矩阵的情况下识别这种语法(不是)运算符优先语法?构建优先矩阵需要O(| G |)。很难看出有任何动机寻求不同的解决方案:)(我不相信有一个与构建矩阵有根本区别。)谢谢。我也无法从文献中找到另一个答案。

给定满足以下两个条件的语法

  • 没有相邻的非终端
  • 没有“S->epsilon”形式的规则
  • 通过建立优先矩阵,我们可以认识到这种语法是一种运算符优先语法(OPG),如果每个终端对最多有一个关系()


    那么,有没有另一种方法可以在不构建优先矩阵的情况下识别这种语法(不是)运算符优先语法?

    构建优先矩阵需要O(| G |)。很难看出有任何动机寻求不同的解决方案:)(我不相信有一个与构建矩阵有根本区别。)谢谢。我也无法从文献中找到另一个答案。