BFS DFS
BFS DFS
CODE:
#include<stdio.h>
#include<stdlib.h>
void main()
int vertices,edges,i,j,cnt=0;
int a=0,b=0;
scanf("%d",&vertices);
scanf("%d",&edges);
int graph[vertices][vertices];
for(i=0;i<edges;i++)
scanf("%d",&a);
printf("Vertex-2: ");
scanf("%d",&b);
graph[a][b]=1;
graph[b][a]=1;
for(i=0;i<vertices;i++)
for(j=0;j<vertices;j++)
{
if(graph[i][j]!=1)
graph[i][j]=0;
for(i=0;i<vertices;i++)
for(j=0;j<vertices;j++)
printf("%d ",graph[i][j]);
printf("\n");
int Queue[100]={-1};
int front=0,rear=-1;
scanf("%d",&a);
rear++;
Queue[rear]=a;
while(rear<vertices)
for(i=0;i<vertices;i++)
if(graph[a][i]==1)
int c=0;
for(j=0;j<vertices;j++)
{
if(i==Queue[j])
c++;
break;
if(c==0)
rear++;
Queue[rear]=i;
if(cnt<vertices)
printf("%d ",Queue[front]);
cnt++;
front++;
a=Queue[front];
else
break;
}
write c program to implement DFS TRAVERSAL
CODE:
#include<stdio.h>
#include<stdlib.h>
void main()
int vertices,edges,i,j,cnt=0,printCount=0;
int a=0,b=0;
scanf("%d",&vertices);
int graph[vertices][vertices];
for(i=0;i<edges;i++)
scanf("%d",&a);
printf("Vertex-2: ");
scanf("%d",&b);
graph[a][b]=1;
graph[b][a]=1;
for(i=0;i<vertices;i++)
for(j=0;j<vertices;j++)
if(graph[i][j]!=1)
graph[i][j]=0;
for(i=0;i<vertices;i++)
for(j=0;j<vertices;j++)
printf("%d ",graph[i][j]);
printf("\n");
}
int stack[100]={-1};
int top=-1;
scanf("%d",&a);
top++; stack[top]=a;
while(top<vertices)
for(i=0;i<vertices;i++)
cnt=0;
if(graph[a][i]==1)
int c=0;
for(j=0;j<vertices;j++)
if(i==stack[j])
c++;
break;
if(c==0)
top++;
stack[top]=i;
cnt++;
break;
}
}
if(printCount<vertices)
printf("%d ",stack[top]);
printCount++;
if(cnt==0)
top--;
a=stack[top];
else
break;