forked from prabhupant/python-ds
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathAdjacency_matrix.py
More file actions
35 lines (27 loc) · 833 Bytes
/
Copy pathAdjacency_matrix.py
File metadata and controls
35 lines (27 loc) · 833 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
class Graph:
def __init__(self, vertices, directed: bool):
self.V = vertices
self.e = 0
self.d = directed
self.graph = []
for i in range(self.V):
lst = [0] * self.V
self.graph.append(lst)
def add_edge(self, ver1, ver2):
if self.d:
self.graph[ver1][ver2] = 1
else:
self.graph[ver1][ver2] = 1
self.graph[ver2][ver1] = 1
def remove_edge(self, ver1, ver2):
if self.d[ver1][ver2] == 0:
print("No edge between %d and %d" % (ver1, ver2))
return
if self.d:
self.graph[ver1][ver2] = 0
else:
self.graph[ver1][ver2] = 0
self.graph[ver2][ver1] = 0
def print_graph(self):
for i in self.graph:
print(i)