二元决策图

时间:2011-01-19 16:57:00

标签: java binary-decision-diagram

在Java中,我有一组表达式,如cond1 AND(cond2 OR cond3)AND(cond 4 OR cond5)。我想将其转换为树,然后评估最终的布尔答案。我试过很多搜索java BDD但是没能得到任何东西。有关示例代码的任何建议吗?

3 个答案:

答案 0 :(得分:3)

5秒Google search返回了一些看似合理的结果:

这不是你想要的吗?

答案 1 :(得分:2)

他的意思是二元决策图。

我一直在修补JavaBDDJBDD/JDD。两者都基于BuDDY(一个C库) - JBDD实际上使用C DLL来提高边际性能。

在我看来,JavaBDD功能更全面(例如,它支持编写BDD,这是我需要的)。但是也没有教程,虽然类文档并不可怕,坦率地说我无法弄清楚如何将它用于最基本的布尔操作(比如你提出的问题)。

JBDD / JDD要求你使用手动垃圾收集,并且做奇怪的事情,比如在Java整数中存储BDD对象 - 显然是C的结转。但它有一套教程。

答案 2 :(得分:0)

如果您想运行自己的解析器,请查看JavaCC。 这是一个很好的教程,可以帮助您入门。有点旧,但仍然有效:

http://www.javaworld.com/jw-12-2000/jw-1229-cooltools.html