Design and Analysis of Algorithm Lab 9 | Read Now

Design and Analysis of Algorithm Lab 9

9] Find Minimum Cost Spanning Tree of a given connected undirected graph using Prim’s algorithm.


9] Program Code

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
import java.util.Scanner;
public class lab9
{
public static void main(String[] args)
{
int w[][]=new int[10][10];
int n,i,j,s,k=0;
int min;
int sum=0;
int u=0,v=0;
int flag=0;
int sol[]=new int[10];
System.out.println("Enter the number of vertices");
Scanner sc=new Scanner(System.in);
n=sc.nextInt();
for(i=1;i<=n;i++)
sol[i]=0;
System.out.println("Enter the weighted graph");
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
w[i][j]=sc.nextInt();
System.out.println("Enter the source vertex");
s=sc.nextInt();
sol[s]=1;
k=1;
while (k<=n-1)
{
min=99;
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(sol[i]==1&&sol[j]==0)
if(i!=j&&min>w[i][j])
{
min=w[i][j];
u=i;
v=j;
}
sol[v]=1;
sum=sum+min;
k++;
System.out.println(u+"->"+v+"="+min);
}
for(i=1;i<=n;i++)
if(sol[i]==0)
flag=1;
if(flag==1)
System.out.println("No spanning tree");
else
System.out.println("The cost of minimum spanning tree is"+sum);
sc.close();
}
}
import java.util.Scanner; public class lab9 { public static void main(String[] args) { int w[][]=new int[10][10]; int n,i,j,s,k=0; int min; int sum=0; int u=0,v=0; int flag=0; int sol[]=new int[10]; System.out.println("Enter the number of vertices"); Scanner sc=new Scanner(System.in); n=sc.nextInt(); for(i=1;i<=n;i++) sol[i]=0; System.out.println("Enter the weighted graph"); for(i=1;i<=n;i++) for(j=1;j<=n;j++) w[i][j]=sc.nextInt(); System.out.println("Enter the source vertex"); s=sc.nextInt(); sol[s]=1; k=1; while (k<=n-1) { min=99; for(i=1;i<=n;i++) for(j=1;j<=n;j++) if(sol[i]==1&&sol[j]==0) if(i!=j&&min>w[i][j]) { min=w[i][j]; u=i; v=j; } sol[v]=1; sum=sum+min; k++; System.out.println(u+"->"+v+"="+min); } for(i=1;i<=n;i++) if(sol[i]==0) flag=1; if(flag==1) System.out.println("No spanning tree"); else System.out.println("The cost of minimum spanning tree is"+sum); sc.close(); } }
import java.util.Scanner;
public class lab9 
{
	public static void main(String[] args) 
	{
	int w[][]=new int[10][10];
	int n,i,j,s,k=0;
	int min;  
	int sum=0;
	int u=0,v=0;
	int flag=0;
	int sol[]=new int[10];
	System.out.println("Enter the number of vertices");
	Scanner sc=new Scanner(System.in);
	n=sc.nextInt();
	for(i=1;i<=n;i++)
		sol[i]=0;
	System.out.println("Enter the weighted graph");
	for(i=1;i<=n;i++)
		for(j=1;j<=n;j++)
			w[i][j]=sc.nextInt();
	System.out.println("Enter the source vertex");
	s=sc.nextInt();
	sol[s]=1;
	k=1;
	while (k<=n-1)
	{
		min=99;
		for(i=1;i<=n;i++)
		for(j=1;j<=n;j++)
		if(sol[i]==1&&sol[j]==0)
		if(i!=j&&min>w[i][j])
		{
			min=w[i][j];
			u=i;
			v=j;	
		}
		sol[v]=1;
		sum=sum+min;
		k++;
		System.out.println(u+"->"+v+"="+min);
	}
	for(i=1;i<=n;i++)
	if(sol[i]==0)
		flag=1;
	if(flag==1)
		System.out.println("No spanning tree");
	else
		System.out.println("The cost of minimum spanning tree is"+sum);
	sc.close();
	}
}

Output

Design and Analysis of Algorithm Lab

Leave a Reply

Your email address will not be published. Required fields are marked *

WhatsApp Icon Join For Job Alerts