File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 11from collections import deque
22import random as rand
33import math as math
4+ import time
45
56# the dfault weight is 1 if not assigend but all the implementation is weighted
67
@@ -19,7 +20,10 @@ class DirectedGraph:
1920 self.graph[u] = [[w, v]]
2021 if not self.graph.get(v):
2122 self.graph[v] = []
22-
23+
24+ def all_nodes(self):
25+ return list(self.graph)
26+
2327 # handels if the input does not exist
2428 def remove_pair(self, u, v):
2529 if self.graph.get(u):
@@ -234,6 +238,18 @@ class DirectedGraph:
234238 if len(stack) == 0:
235239 return False
236240
241+ def dfs_time(self, s = -2, e = -1):
242+ begin = time.time()
243+ self.dfs(s,e)
244+ end = time.time()
245+ return end - begin
246+
247+ def bfs_time(self, s = -2):
248+ begin = time.time()
249+ self.bfs(s)
250+ end = time.time()
251+ return end - begin
252+
237253class Graph:
238254 def __init__(self):
239255 self.graph = {}
@@ -436,3 +452,17 @@ class Graph:
436452 # check if se have reached the starting point
437453 if len(stack) == 0:
438454 return False
455+ def all_nodes(self):
456+ return list(self.graph)
457+
458+ def dfs_time(self, s = -2, e = -1):
459+ begin = time.time()
460+ self.dfs(s,e)
461+ end = time.time()
462+ return end - begin
463+
464+ def bfs_time(self, s = -2):
465+ begin = time.time()
466+ self.bfs(s)
467+ end = time.time()
468+ return end - begin
You can’t perform that action at this time.
0 commit comments