Apply the following two algorithms to find the minimum spanning tree to the graph in Figure 1a.
a. Probably the first algorithm for finding the minimum spanning tree was devised in 1926 by Otakar Borůvka (pronounced: boh-roof-ka). In this method, we start with |V| one-vertex trees, and for each vertex v, we look for an edge(vw) of minimum weight among all edges outgoing from v and create small trees by including these edges. Then, we look for edges of minimal weight that can connect the resulting trees to larger trees. The process is finished when one tree is created. Here is a pseudocode for this algorithm:
BorůvkaAlgorithnm(weighted connected undirected graph) make each vertex the root of a one-node tree; while there is more than one tree for each tree t e = minimum weight edge(vu) where v is included in t and u is not; create a tree by combining t and the tree that includes u if such a tree does not exist yet;b. Another algorithm was discovered by Vojtech Jarnik (pronounced: yar-neek) in 1936 and later rediscovered by Robert Prim. In this method, all of the edges are also initially ordered, but a candidate for inclusion in the spanning tree is an edge that not only does not lead to cycles in the tree, but also is incident to a vertex already in the tree:
JarnikPrimAlgorithm(weighted connected undirected graph) tree = null; edges = sequence of all edges of graph sorted by weight; for i = 1 to |V| – 1 for j = 1 to |edges| if ej from edges does not form a cycle with edges in tree and is incident to a vertex in tree add ej to tree; break;
Figure 1 A spanning tree of graph (a) found, (ba–bf) with Kruskal’s algorithm, (ca–cl) and with Dijkstra’s method.


We need at least 10 more requests to produce the solution.
0 / 10 have requested this problem solution
The more requests, the faster the answer.