最小生成树 jgraphx
minimum spanning arborescence jgraphx
JGraphX 中是否有任何方法 returns 有向图的最小跨度树状图?
我一直在使用getMinimumSpanningTree方法,为'directed'参数设置'true',但它实际上是Prim的算法,在某些有向图上失败。
据我所知,JGraphX 的功能集相当有限。您可以使用 Mathematica 和名为 FindSpanningTree 的函数来解决这个问题。默认情况下,它会为您选择最合适的函数,但如果您愿意,可以将 method 设置为 MinimumCostArborescence。
要找到最小生成树,您有 3 个选项:
就我个人而言,对于大多数图,我更喜欢 Kruskal 算法。
如果您想在通用图表下设置 JLink to use Mathematica is a bit overkill or want a free solution, then viable free open source alternative would be Python library Sage. Sage has method called edge_disjoint_spanning_trees。
如果您更喜欢此选项,那么这里有 5 种从 java 调用 python 的方法:link.
JGraphX 中是否有任何方法 returns 有向图的最小跨度树状图?
我一直在使用getMinimumSpanningTree方法,为'directed'参数设置'true',但它实际上是Prim的算法,在某些有向图上失败。
据我所知,JGraphX 的功能集相当有限。您可以使用 Mathematica 和名为 FindSpanningTree 的函数来解决这个问题。默认情况下,它会为您选择最合适的函数,但如果您愿意,可以将 method 设置为 MinimumCostArborescence。
要找到最小生成树,您有 3 个选项:
就我个人而言,对于大多数图,我更喜欢 Kruskal 算法。
如果您想在通用图表下设置 JLink to use Mathematica is a bit overkill or want a free solution, then viable free open source alternative would be Python library Sage. Sage has method called edge_disjoint_spanning_trees。
如果您更喜欢此选项,那么这里有 5 种从 java 调用 python 的方法:link.