# C Program implement Kruskal’s algorithm.

Write a C Program implement Kruskal’s algorithm.
Kruskal’s algorithm is a greedy algorithm that finds the minimum spanning tree of a graph. Graph should be weighted, connected, and undirected.Minimum spanning tree is a spanning tree with weight less than or equal to the weight of every other spanning tree. Read more about C Programming Language .

`/************************************************************ You can use all the programs on  www.c-program-example.com* for personal and learning purposes. For permissions to use the* programs for commercial purposes,* contact info@c-program-example.com* To find more C programs, do visit www.c-program-example.com* and browse!* *                      Happy Coding***********************************************************/#include<stdio.h>#include<conio.h>#include<stdlib.h>int i,j,k,a,b,u,v,n,ne=1;int min,mincost=0,cost[9][9],parent[9];int find(int);int uni(int,int);void main(){ clrscr(); printf("nntImplementation of Kruskal's algorithmnn"); printf("nEnter the no. of verticesn"); scanf("%d",&n); printf("nEnter the cost adjacency matrixn"); for(i=1;i<=n;i++) {  for(j=1;j<=n;j++)  {   scanf("%d",&cost[i][j]);   if(cost[i][j]==0)    cost[i][j]=999;  } } printf("nThe edges of Minimum Cost Spanning Tree arenn"); while(ne<n) {  for(i=1,min=999;i<=n;i++)  {   for(j=1;j<=n;j++)   {    if(cost[i][j]<min)    {     min=cost[i][j];     a=u=i;     b=v=j;    }   }  }  u=find(u);  v=find(v);  if(uni(u,v))  {   printf("n%d edge (%d,%d) =%dn",ne++,a,b,min);   mincost +=min;  }  cost[a][b]=cost[b][a]=999; } printf("ntMinimum cost = %dn",mincost); getch();}int find(int i){ while(parent[i])  i=parent[i]; return i;}int uni(int i,int j){ if(i!=j) {  parent[j]=i;  return 1; } return 0;}`
`Read more Similar C ProgramsData StructuresDijkstras AlgorithmLearn C Programming`

You can easily select the code by double clicking on the code area above.

You can discuss these programs on our Facebook Page. Start a discussion right now,

our page!

(you can send this program to your friend using this button)

To browse more C Programs visit this link
(c) www.c-program-example.com

# C Program to find a minimum spanning tree using Prim’s algorithm

C Program to implement the Prim’s algorithm. Prims algorithm is a greedy algorithm that finds the minimum spanning tree of a graph. Graph should be weighted, connected, and undirected. Read more about C Programming Language .

`/************************************************************ You can use all the programs on  www.c-program-example.com* for personal and learning purposes. For permissions to use the* programs for commercial purposes,* contact info@c-program-example.com* To find more C programs, do visit www.c-program-example.com* and browse!* *                      Happy Coding***********************************************************/#include<stdio.h>#include<conio.h>int a,b,u,v,n,i,j,ne=1;int visited[10]={0},min,mincost=0,cost[10][10];void main(){ clrscr(); printf("n Enter the number of nodes:"); scanf("%d",&n); printf("n Enter the adjacency matrix:n"); for(i=1;i<=n;i++)  for(j=1;j<=n;j++)  {   scanf("%d",&cost[i][j]);   if(cost[i][j]==0)    cost[i][j]=999;  } visited[1]=1; printf("n"); while(ne<n) {  for(i=1,min=999;i<=n;i++)   for(j=1;j<=n;j++)    if(cost[i][j]<min)     if(visited[i]!=0)     {      min=cost[i][j];      a=u=i;      b=v=j;     }  if(visited[u]==0 || visited[v]==0)  {   printf("n Edge %d:(%d %d) cost:%d",ne++,a,b,min);   mincost+=min;   visited[b]=1;  }  cost[a][b]=cost[b][a]=999; } printf("n Minimun cost=%d",mincost); getch();}`
`Read more Similar C ProgramsData StructuresDijkstras AlgorithmLearn C Programming`

You can easily select the code by double clicking on the code area above.