【发布时间】:2011-07-20 16:41:05
【问题描述】:
我有这个公式:
否定表达式 : NEGATION^* 原子 ;
原子
: 'a'..'z' | 'A'..'Z';
使用上面的语法规则,如果我输入公式 ¬¬a,我会得到这个树结构:
¬ 是根节点, ¬ 被遗弃的孩子;正确的孩子
但是,我想要的是: ¬ 作为根节点, 第二个¬是上述节点的唯一孩子 a 是第二个的唯一孩子 ¬
基本上,我看到所有的 NEGATION 符号都只有一个孩子,这可能吗?我知道我们可能可以使用“重写规则”来重构树,但我不知道该怎么做。
感谢任何帮助或建议!谢谢!
【问题讨论】:
-
¬ 是根节点,第二个 ¬ 是上述节点的唯一子节点,"a" 是第二个节点的唯一子节点 ¬
标签: antlr binary-tree