Untitled

 avatar
unknown
plain_text
5 months ago
648 B
2
Indexable
#include<stdio.h>
int a[20][20],q[20],visited[20],n,f=-1,r=-1;
void bfs(int v)
{
int i;
for(i=0;i<n;i++)
{
if(a[v][i]!=0&&visited[i]==0)
{
r=r+1;
q[r]=i;
visited[i]=1;
printf("->%d",i);
}
}
f=f+1;
bfs(q[f]);
}
void main()
{
int v,j,i;
printf("\nEnter the number of vertices");
scanf("%d",&n);
for(i=0;i<n;i++)
{
visited[i]=0;
}
printf("\nEnter adjacency matrix\n");
for(i=0;i<n;i++)
for(j=0;j<n;j++)
scanf("%d",&a[i][j]);
printf("\nenter the starting vertex");
scanf("%d",&v);
f=r=0;
q[r]=v;
printf("\nBFS traversal is\n");
visited[v]=1;
printf("%d",v);
bfs(v);
if(r!=n-1)
printf("\nbfs is not possible");
}
Editor is loading...
Leave a Comment