diff --git a/graphs/graph_matrix.py b/graphs/graph_matrix.py index 987168426ba5..f97a59f317c5 100644 --- a/graphs/graph_matrix.py +++ b/graphs/graph_matrix.py @@ -4,22 +4,31 @@ def __init__(self, vertex): self.graph = [[0] * vertex for i in range(vertex)] def add_edge(self, u, v): + if u > self.vertex or v > self.vertex or u < 1 or v < 1: + raise IndexError("Invalid Edge") self.graph[u - 1][v - 1] = 1 self.graph[v - 1][u - 1] = 1 - def show(self): + def remove_edge(self, u, v): + if u > self.vertex or v > self.vertex or u < 1 or v < 1: + raise IndexError("Invalid Edge") + self.graph[u - 1][v - 1] = 0 + self.graph[v - 1][u - 1] = 0 + def show(self): for i in self.graph: for j in i: print(j, end=" ") print(" ") -g = Graph(100) +g = Graph(4) g.add_edge(1, 4) g.add_edge(4, 2) -g.add_edge(4, 5) -g.add_edge(2, 5) -g.add_edge(5, 3) +g.add_edge(4, 3) +g.add_edge(2, 4) +g.add_edge(3, 1) +g.show() +g.remove_edge(4, 3) g.show()