我正在学习递归的体面解析,并提出了一些我认为算法不起作用的场景。其中之一是,考虑到这个简单的语法:E→id \x= id + id
然后字符串id + id;在这种语法的语言中是有效的。然而,如果执行递归下降算法,则从S下降到E,然后下降到id,这是第一个匹配终端。现在输入在+,我们回到S,试图匹配;,但在S级别上没有其他规则可供选择。我认为语法不是模棱两可的,因为语言id;和id + id;中只有两个字符串,每个字符串都有一个唯一的解析树。这里的一般问题是
最近,我不得不为下面概述的集合问题开发一种简单的递归算法,但现在我想知道问题的正式描述/名称是什么,以及是否有一种算法可以更有效地解决这个问题(我怀疑有)。我知道有不同的算法来寻找相交和断开,但我还没有认识到任何涉及整个问题的算法。取不确定的集合数,并为所有集合的每个相交和非相交返回一个集合。例如,给定4组作为输入A、B、C、D:B {2,3,4,15,11,13,9}
C {13