File tree
Expand file treeCollapse file tree4 files changed
+135
-0
lines changed Expand file treeCollapse file tree4 files changed
+135
-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 | + |
| 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 | +def bfs(self,v): |
| 18 | + |
| 19 | +visited = [False]*self.vertex |
| 20 | +visited[v - 1] = True |
| 21 | +print('%d visited' % (v)) |
| 22 | + |
| 23 | +queue = [v - 1] |
| 24 | +while len(queue) > 0: |
| 25 | +v = queue[0] |
| 26 | +for u in range(self.vertex): |
| 27 | +if self.graph[v][u] == 1: |
| 28 | +if visited[u]== False: |
| 29 | +visited[u] = True |
| 30 | +queue.append(u) |
| 31 | +print('%d visited' % (u +1)) |
| 32 | +queue.pop(0) |
| 33 | + |
| 34 | +g = Graph(10) |
| 35 | + |
| 36 | +g.add_edge(1,2) |
| 37 | +g.add_edge(1,3) |
| 38 | +g.add_edge(1,4) |
| 39 | +g.add_edge(2,5) |
| 40 | +g.add_edge(3,6) |
| 41 | +g.add_edge(3,7) |
| 42 | +g.add_edge(4,8) |
| 43 | +g.add_edge(5,9) |
| 44 | +g.add_edge(6,10) |
| 45 | +g.bfs(1) |
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 | +def show(self): |
| 12 | + |
| 13 | +for i in self.graph: |
| 14 | +for j in i: |
| 15 | +print(j, end=' ') |
| 16 | +print(' ') |
| 17 | + |
| 18 | + |
| 19 | +def dfs(self, u): |
| 20 | +self.visited[u - 1] = True |
| 21 | +print('%d visited' % u) |
| 22 | +for i in range(1, self.vertex + 1): |
| 23 | +if self.graph[u - 1][i - 1] == 1 and self.visited[i - 1] == False: |
| 24 | +self.dfs(i) |
| 25 | + |
| 26 | + |
| 27 | +g = Graph(5) |
| 28 | +g.add_edge(1,4) |
| 29 | +g.add_edge(4,2) |
| 30 | +g.add_edge(4,5) |
| 31 | +g.add_edge(2,5) |
| 32 | +g.add_edge(5,3) |
| 33 | +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