Let G be an undirected graph with n vertices and m edges, such that each edge has a real-valued cost. We consider the problem of finding a set of k edge-disjoint spanning trees in G of minimum total edge cost. This problem can be solved in polynomial time by the matroid greedy algorithm. We present an implementation of this algorithm that runs in O(m log m + k 2 n 2 ) time. If all edge costs are the same, the algorithm runs in O(k 2 n 2 ) time. The algorithm can also be extended to find the largest k such that k edge-disjoint spanning trees exist in O(m 2 ) time. We mention several applications of the algorithm.
No takes yet. Share an insight, caveat, or question.
Roskind et al. (1985) studied this question.
Synapse has enriched one closely related paper. Consider it for comparative context: