11#include <stdio.h>
22#define N 11
33
4- typedef struct {
4+ typedef struct
5+ {
56 int u , v ;
67}GRAPH ;
78
8- typedef struct {
9+ typedef struct
10+ {
911 int queue [N ];
1012 int rear ;
1113 int front ;
1214}QUEUE ;
1315
14- void initiliazeQueue (QUEUE * q ) {
16+ void initiliazeQueue (QUEUE * q )
17+ {
1518 q -> rear = 0 ;
1619 q -> front = 0 ;
1720}
1821
19- void enqueue (QUEUE * q , int x ) {
22+ void enqueue (QUEUE * q , int x )
23+ {
2024 q -> queue [q -> rear ++ ] = x ;
2125}
2226
23- int dequeue (QUEUE * q ) {
27+ int dequeue (QUEUE * q )
28+ {
2429 return q -> queue [q -> front ++ ];
2530}
2631
27- void adjacencyBuilder (GRAPH graph [], int adjacency [][7 ], int edges , int vertices ) {
32+ void adjacencyBuilder (GRAPH graph [], int adjacency [][7 ], int edges , int vertices )
33+ {
2834 int i , j ;
2935 for (i = 0 ; i < vertices ; i ++ ) //initialize the matrix
3036 for (j = 0 ; j < vertices ; j ++ )
3137 adjacency [i ][j ] = 0 ;
3238
33- for (i = 0 ; i < edges ; i ++ ) {
39+ for (i = 0 ; i < edges ; i ++ )
40+ {
3441 adjacency [graph [i ].u ][graph [i ].v ] = 1 ;
3542 adjacency [graph [i ].v ][graph [i ].u ] = 1 ;
3643 }
3744
38- for (i = 0 ; i < vertices ; i ++ ) { //print the matrix
45+ for (i = 0 ; i < vertices ; i ++ )
46+ { //print the matrix
3947 for (j = 0 ; j < vertices ; j ++ )
4048 printf ("%d " , adjacency [i ][j ]);
4149 printf ("\n" );
4250 }
4351}
4452
45- void bfsIterative (QUEUE * q , int v , int adjacency [][7 ], int * visited , int vertices , int * parent ){
53+ void bfsIterative (QUEUE * q , int v , int adjacency [][7 ], int * visited , int vertices , int * parent )
54+ {
4655 int i ;
4756 parent [i ] = -1 ;
4857 visited [v ] = 1 ;
4958 enqueue (q , v );
50- while (q -> front < q -> rear ) {
59+ while (q -> front < q -> rear )
60+ {
5161 v = dequeue (q );
52- for (i = 0 ; i < vertices ; i ++ ) {
62+ for (i = 0 ; i < vertices ; i ++ )
63+ {
5364 if ((adjacency [v ][i ] == 1 ) && (visited [i ] == 0 )) {
5465 parent [i ] = v ;
5566 visited [i ] = 1 ;
@@ -61,13 +72,15 @@ void bfsIterative(QUEUE *q, int v, int adjacency[][7], int *visited, int vertice
6172
6273int main (int argc , char * * argv )
6374{
64- GRAPH graph [11 ];
75+ GRAPH graph [11 ];
6576 QUEUE q ;
6677 int adjacency [7 ][7 ], visited [7 ], parent [7 ], vertices = 7 , edges = 11 , i ;
67- for (i = 0 ; i < vertices ; i ++ ) { //initialize visited array
78+ for (i = 0 ; i < vertices ; i ++ )
79+ { //initialize visited array
6880 visited [i ] = 0 ;
6981 }
70- for (i = 0 ; i < vertices ; i ++ ) { //initialize parent array
82+ for (i = 0 ; i < vertices ; i ++ )
83+ { //initialize parent array
7184 parent [i ] = 0 ;
7285 }
7386 initiliazeQueue (& q );
0 commit comments