A spanning tree of a connected graph is a connected subgraph with the smallest number of edges that includes all vertices of the graph. A graph will have many spanning trees. Among these, the minimum spanning tree will have the smallest sum of edge weights.
Arguments
- graph
The graph object to analyze.
- weights
Numeric vector giving the weights of the edges in the graph. The order is determined by the edge ids. This is ignored if the
unweightedalgorithm is chosen. Edge weights are interpreted as distances.- algorithm
The algorithm to use for calculation.
unweightedcan be used for unweighted graphs, andprimruns Prim's algorithm for weighted graphs. If this isNULLthen igraph will select the algorithm automatically: if the graph has an edge attribute calledweightor theweightsargument is notNULLthen Prim's algorithm is chosen, otherwise the unweighted algorithm is used.- ...
Additional arguments, unused.
Value
A graph object with the minimum spanning forest. To check whether it
is a tree, check that the number of its edges is vcount(graph)-1.
The edge and vertex attributes of the original graph are preserved in the
result.
Details
The minimum spanning forest of a disconnected graph is the collection of minimum spanning trees of all of its components.
If the graph is not connected a minimum spanning forest is returned.
References
Prim, R.C. 1957. Shortest connection networks and some generalizations Bell System Technical Journal, 37 1389–1401.
Author
Gabor Csardi csardi.gabor@gmail.com
Examples
g <- sample_gnp(100, 3 / 100)
g_mst <- mst(g)
