Close
Close window
KruskalsAlgorithm - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Mozilla Firefox.
Maplesoft logo
Maplesoft logo

Online Help

All Products Maple MapleSim


[フレーム] [フレーム]

GraphTheory

MinimalSpanningTree

find least-weight path through graph

KruskalsAlgorithm

find least-weight path using Kruskal's algorithm

PrimsAlgorithm

find least-weight path using Prim's algorithm

Calling Sequence

MinimalSpanningTree(G)

MinimalSpanningTree(G,w,animate)

KruskalsAlgorithm(G,w,animate)

PrimsAlgorithm(G,w,animate)

Parameters

G

-

an undirected graph, weighted or unweighted

w

-

(optional) name

animate

-

(optional) literal animate indicating that an animation of the algorithm should be returned instead of the tree.

Description

MinimalSpanningTree, KruskalsAlgorithm, and PrimsAlgorithm all return a spanning tree of the undirected graph G with minimum possible weight. If the graph G is unweighted, each edge is considered to have weight 1.

If the optional parameter w is given, it is assigned the weight of the minimal spanning tree.

If the literal animate, or animate=true is given, an animation of the application of the algorithm will be returned instead of the minimal spanning tree.

The routine PrimsAlgorithm uses Prim's algorithm for computing the minimal spanning tree and the routine KruskalsAlgorithm uses Kruskal's algorithm. The routine MinimalSpanningTree uses Kruskal's algorithm.

Setting infolevel[KruskalsAlgorithm] := 4; and infolevel[PrimsAlgorithm] := 4; results in some information being printed out, indicating the steps of the respective algorithms.

Examples

>

withGraphTheory:

>

withRandomGraphs:

>

AMatrix0,1,0,4,0,0,1,0,1,0,4,0,0,1,0,3,0,1,4,0,3,0,1,0,0,4,0,1,0,4,0,0,1,0,4,0:

>

GGraphA:

>

TMinimalSpanningTreeG:

>

EdgesT,weights

1,2,1,2,3,1,3,4,3,3,6,1,4,5,1

(1)
>

addGetEdgeWeightG,e,e=EdgesT

7

(2)
>

SSpanningTreeG:

>

addGetEdgeWeightG,e,e=EdgesS

11

(3)
>

PrimsAlgorithmG,w,animate

Note: To animate the example above, open this help page as a worksheet, click the plot in the worksheet, and use the controls in the animation toolbar above the worksheet.

>

w

7

(4)
>

GRandomGraph100,0.5,weights=0...1.0,connected:

>

infolevelKruskalsAlgorithm4:

>

TKruskalsAlgorithmG,w:

KruskalsAlgorithm: "constructing minimal spanning tree on 100 vertices."
KruskalsAlgorithm: "using Kruskal's algorithm at time 1.668"
KruskalsAlgorithm: "making heap of 2490 edges at time: 1.675"
KruskalsAlgorithm: "finding the edges at time: 1.697"
KruskalsAlgorithm: "exiting Kruskal's algorithm at time 1.717"

>

w

2.25620251143321

(5)


Download Help Document

AltStyle によって変換されたページ (->オリジナル) /