Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def all_paths(self, s: Vertex, t: Vertex, k: int) -> list:
- visited = [False] * len(self.vertices)
- paths = []
- path = []
- path.append(s)
- self.dfs(s, t, visited, path, paths)
- print(paths)
- def dfs(self, s: Vertex, t: Vertex, visited: list, path: list, paths: list):
- visited[self.vertices.index(s)] = True
- if s == t:
- # print(path)
- paths.append(path)
- # print(paths)
- return
- for adjacent in s.edges:
- if not visited[self.vertices.index(adjacent)]:
- path.append(adjacent)
- self.dfs(adjacent, t, visited, path, paths)
- path.remove(adjacent)
- visited[self.vertices.index(s)] = False
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement