21
1 KUVEMPU UNIVERSITY KUVEMPU UNIVERSITY Department of Computer Science Department of Computer Science Jnana Sahyadri Jnana Sahyadri Shankarghatta Shankarghatta Seminar on Seminar on Kruskal’s Algorithm ” Kruskal’s Algorithm ” Presented by, Presented by, Chaitra.M.S Chaitra.M.S 3 3 rd rd sem , M.Sc, sem , M.Sc, Dept. Of Computer Science, Dept. Of Computer Science, Shankarghatta. Shankarghatta. Under Under the guidance of, the guidance of, Suresh.M, Suresh.M, Dept. Of Computer Dept. Of Computer

KRUSKALS'S algorithm from chaitra

Embed Size (px)

Citation preview

Page 1: KRUSKALS'S algorithm from chaitra

1

KUVEMPU UNIVERSITY KUVEMPU UNIVERSITY Department of Computer ScienceDepartment of Computer Science

Jnana SahyadriJnana SahyadriShankarghattaShankarghatta

Seminar onSeminar on

““Kruskal’s Algorithm ”Kruskal’s Algorithm ”

Presented by, Presented by, Chaitra.M.S Chaitra.M.S 33rdrd sem , M.Sc, sem , M.Sc, Dept. Of Computer Science,Dept. Of Computer Science, Shankarghatta.Shankarghatta.

Under the guidance of,Under the guidance of, Suresh.M,Suresh.M,

Dept. Of Computer Science,Dept. Of Computer Science, Shankarghatta.Shankarghatta.

Page 2: KRUSKALS'S algorithm from chaitra

2

Contents

• Spanning trees• Finding a spanning tree• Minimum-cost spanning trees• Kruskal’s algorithm And example

Page 3: KRUSKALS'S algorithm from chaitra

Spanning Trees

Page 4: KRUSKALS'S algorithm from chaitra

4

Spanning trees

• Suppose you have a connected undirected graph– Connected: every node is reachable from every other node

– Undirected: edges do not have an associated direction

• ...then a spanning tree of the graph is a connected subgraph in which there are no cycles

A connected,undirected graph

Four of the spanning trees of the graph

Page 5: KRUSKALS'S algorithm from chaitra

5

Finding a spanning tree

• To find a spanning tree of a graph, pick an initial node and call it part of the spanning tree do a search from the initial node:

each time you find a node that is not in the spanning tree, add to the spanning tree both the new node and the edge you followed to get to it

An undirected graph

Page 6: KRUSKALS'S algorithm from chaitra

6

Minimizing costs

• Suppose you want to supply a set of houses (say, in a new subdivision) with:– electric power

– water

– sewage lines

– telephone lines

• To keep costs down, you could connect these houses with a spanning tree (of, for example, power lines)– However, the houses are not all equal distances apart

• To reduce costs even further, you could connect the houses with a minimum-cost spanning tree

Page 7: KRUSKALS'S algorithm from chaitra

7

Minimum-cost spanning trees

• Suppose you have a connected undirected graph with a weight (or cost) associated with each edge

• The cost of a spanning tree would be the sum of the costs of its edges

• A minimum-cost spanning tree is a spanning tree that has the lowest cost

A B

E D

F C

16

19

21 11

33 14

1810

6

5

A connected, undirected graph

A B

E D

F C

1611

18

6

5

A minimum-cost spanning tree

A B

E D

F C

16

19

21 11

33 14

1810

6

5

A connected, undirected graph

Page 8: KRUSKALS'S algorithm from chaitra

8

Kruskal algorithm(E,cost,n,t)//E is set of edges in G .G has n vertices.Cost[u,v] is //cost of edge(u,v).t is the set of edges in minimum-cost //spanning tree.the final cost is returned.

{ //construct a heap out of the edge costs using heapify For i=:1 to n do parent[i]:=-1;//each vertex is in a different set.i:=0;mincost:=0.0;

While((i<n-1) and (heap not empty)) do{ //delete a minimum cost edje(u,v) from the heap and reheapify using

Adjust; j:=Find(u); k:=Find(v);

Page 9: KRUSKALS'S algorithm from chaitra

9

If (j!=k) then { i:=i+1; t[i,1]:=u; t[i,2]:=v; mincost:=mincost+cost[u,v]; union(j,k); } } if(i!=n-1) then write(“no spanning tree”); else return mincost;

}

Page 10: KRUSKALS'S algorithm from chaitra

10

Example graph

Page 11: KRUSKALS'S algorithm from chaitra

11

Page 12: KRUSKALS'S algorithm from chaitra

12

Page 13: KRUSKALS'S algorithm from chaitra

13

Page 14: KRUSKALS'S algorithm from chaitra

14

Page 15: KRUSKALS'S algorithm from chaitra

15

Page 16: KRUSKALS'S algorithm from chaitra

16

Page 17: KRUSKALS'S algorithm from chaitra

17

Page 18: KRUSKALS'S algorithm from chaitra

18

Page 19: KRUSKALS'S algorithm from chaitra

19

Minimum cost spanning tree we obtained finally

Page 20: KRUSKALS'S algorithm from chaitra

20

Any queries???????????

Page 21: KRUSKALS'S algorithm from chaitra

21

Thank U………………