File tree 3 files changed +92
-0
lines changed
3 files changed +92
-0
lines changed Original file line number Diff line number Diff line change
1
+ class Graph :
2
+
3
+ def __init__ (self , vertex ):
4
+ self .vertex = vertex
5
+ self .graph = [[0 ] * vertex for i in range (vertex ) ]
6
+ self .visited = [False ] * vertex
7
+
8
+ def add_edge (self , u , v ):
9
+ self .graph [u - 1 ][v - 1 ] = 1
10
+ self .graph [v - 1 ][u - 1 ] = 1
11
+
12
+ def show (self ):
13
+
14
+ for i in self .graph :
15
+ for j in i :
16
+ print (j , end = ' ' )
17
+ print (' ' )
18
+
19
+
20
+ def dfs (self , u ):
21
+ self .visited [u - 1 ] = True
22
+ print ('%d visited' % u )
23
+ for i in range (1 , self .vertex + 1 ):
24
+ if self .graph [u - 1 ][i - 1 ] == 1 and self .visited [i - 1 ] == False :
25
+ self .dfs (i )
26
+
27
+
28
+ g = Graph (5 )
29
+
30
+ g .add_edge (1 ,4 )
31
+ g .add_edge (4 ,2 )
32
+ g .add_edge (4 ,5 )
33
+ g .add_edge (2 ,5 )
34
+ g .add_edge (5 ,3 )
35
+ print (g .dfs (1 ))
Original file line number Diff line number Diff line change
1
+ class Graph :
2
+ def __init__ (self , vertex ):
3
+ self .vertex = vertex
4
+ self .graph = [[0 ] for i in range (vertex )]
5
+
6
+ def add_edge (self , u , v ):
7
+ self .graph [u - 1 ].append (v - 1 )
8
+
9
+ def show (self ):
10
+ for i in range (self .vertex ):
11
+ print ('%d: ' % (i + 1 ), end = ' ' )
12
+ for j in self .graph [i ]:
13
+ print ('%d-> ' % (j + 1 ), end = ' ' )
14
+ print (' ' )
15
+
16
+
17
+
18
+ g = Graph (5 )
19
+
20
+ g .add_edge (1 ,3 )
21
+ g .add_edge (2 ,3 )
22
+ g .add_edge (3 ,4 )
23
+ g .add_edge (3 ,5 )
24
+ g .add_edge (4 ,5 )
25
+
26
+ g .show ()
27
+
Original file line number Diff line number Diff line change
1
+ class Graph :
2
+
3
+ def __init__ (self , vertex ):
4
+ self .vertex = vertex
5
+ self .graph = [[0 ] * vertex for i in range (vertex ) ]
6
+
7
+ def add_edge (self , u , v ):
8
+ self .graph [u - 1 ][v - 1 ] = 1
9
+ self .graph [v - 1 ][u - 1 ] = 1
10
+
11
+ def show (self ):
12
+
13
+ for i in self .graph :
14
+ for j in i :
15
+ print (j , end = ' ' )
16
+ print (' ' )
17
+
18
+
19
+
20
+
21
+ g = Graph (5 )
22
+
23
+ g .add_edge (1 ,3 )
24
+ g .add_edge (2 ,3 )
25
+ g .add_edge (3 ,4 )
26
+ g .add_edge (3 ,5 )
27
+ g .add_edge (4 ,5 )
28
+
29
+ g .show ()
30
+
You can’t perform that action at this time.
0 commit comments