jgrapht KruskalMinimumSpanningTree 检索边权重
jgrapht KruskalMinimumSpanningTree retrieving the edge weights
我有一个图,我需要得到 最小生成树 所以我使用了 KruskalMinimumSpanningTree
class,现在我需要检索每条边的权重所以根据 DefaultWeightedEdge 的 API 有一个方法 getWeight()
它检索边的权重,但是在执行以下代码后,该方法 getWeight()
不存在!
KruskalMinimumSpanningTree<Pixel, DefaultWeightedEdge> k= new KruskalMinimumSpanningTree(gg);
Set<DefaultWeightedEdge> itr = k.getSpanningTree().getEdges();
for(DefaultWeightedEdge edge: itr)
System.out.println(edge.getWeight());
为什么会这样?
好的。我找到了我的问题的解决方案,显然这些方法受到保护。一种方法是:
KruskalMinimumSpanningTree<Pixel, DefaultWeightedEdge> k= new
KruskalMinimumSpanningTree(gg);
Set<DefaultWeightedEdge> itr = k.getSpanningTree().getEdges();
for(DefaultWeightedEdge edge: itr)
System.out.println(gg.getEdgeWeight(edge));
我有一个图,我需要得到 最小生成树 所以我使用了 KruskalMinimumSpanningTree
class,现在我需要检索每条边的权重所以根据 DefaultWeightedEdge 的 API 有一个方法 getWeight()
它检索边的权重,但是在执行以下代码后,该方法 getWeight()
不存在!
KruskalMinimumSpanningTree<Pixel, DefaultWeightedEdge> k= new KruskalMinimumSpanningTree(gg);
Set<DefaultWeightedEdge> itr = k.getSpanningTree().getEdges();
for(DefaultWeightedEdge edge: itr)
System.out.println(edge.getWeight());
为什么会这样?
好的。我找到了我的问题的解决方案,显然这些方法受到保护。一种方法是:
KruskalMinimumSpanningTree<Pixel, DefaultWeightedEdge> k= new
KruskalMinimumSpanningTree(gg);
Set<DefaultWeightedEdge> itr = k.getSpanningTree().getEdges();
for(DefaultWeightedEdge edge: itr)
System.out.println(gg.getEdgeWeight(edge));