Beispiel #1
0
 def min_tree(self):
     e = sorted(self.e, key=operator.itemgetter(2))
     dsu = DSU(self.vertices)
     res = WeightedGraph(self.vertices)
     for edge in e:
         if dsu.find(edge[0]) != dsu.find(edge[1]):
             dsu.unite(edge[0], edge[1])
             res.add_directed_link(edge[0], edge[1], edge[2])
     return res