def test_find_path_dfs(self): graph = Graph(is_directed=True) graph.add_vertex('A') graph.add_vertex('B') graph.add_vertex('C') graph.add_edge('A', 'B') graph.add_edge('B', 'C') graph.add_edge('C', 'A') path = graph.find_path_dfs_iter('A', 'C') self.assertEqual(path, ['A', 'B', 'C'])
def test_bfs(self): """Create a graph.""" graph = Graph(is_directed=True) graph.add_vertex('A') graph.add_vertex('B') graph.add_vertex('C') graph.add_vertex('D') graph.add_vertex('E') graph.add_vertex('F') graph.add_vertex('G') graph.add_edge('A', 'B') graph.add_edge('B', 'C') graph.add_edge('B', 'G') graph.add_edge('C', 'F') graph.add_edge('C', 'D') graph.add_edge('D', 'E') graph.add_edge('E', 'F') answer = sorted(['A', 'B', 'C', 'D', 'E', 'F']) self.assertListEqual(graph.find_path_dfs_iter('A', 'F'), answer)