我正在查看jgrapht和jung,但我似乎找不到任何方法让我做我喜欢的事。
我有一个图表,通过指定一个根节点和一些树叶,我想从中获取一棵树,或者如果不可能,至少会出错。
jgraphT和jung似乎都有alghoritms来从图中获得最小生成树,但是获得的树是随机的,没有人向我保证给定节点将是叶子而另一个将是中继...
答案 0 :(得分:0)
如果你只用一片叶子来考虑这个问题,那么这就转到了这样一个问题:“是否有一个从根开始到最后一次访问每个其他节点的叶子的步行?”
这听起来很像“最长路径”问题......这是NP难的。 (而且我不认为添加更多叶子有帮助。:))
我可以想到启发式方法(以及证明特定图形的方法,或根/叶的选择,问题没有解决方案)但我怀疑通常你将不得不使用详尽的搜索方法,像这样: