def test_bfs_1(self): for g in self.graph_1s: self.assertEqual([ graph.Edge(graph.Node(1), graph.Node(3), 1), graph.Edge(graph.Node(3), graph.Node(10), 1), graph.Edge(graph.Node(10), graph.Node(8), 1) ], searches.bfs(g, graph.Node(1), graph.Node(8)))
def test_bfs_3(self): for g in self.graph_1s: self.assertEqual([ graph.Edge(graph.Node(1), graph.Node(2), 1), graph.Edge(graph.Node(2), graph.Node(4), 1), graph.Edge(graph.Node(4), graph.Node(5), 1) ], searches.bfs(g, graph.Node(1), graph.Node(5)))
def test_bfs_5(self): for g in self.graph_2s: self.assertEqual( [ graph.Edge(graph.Node(0), graph.Node(1), 4), graph.Edge(graph.Node(1), graph.Node(2), 7) ], searches.bfs(g, graph.Node(0), graph.Node(2)) )
def test_bfs_4(self): for g in self.graph_2s: self.assertEqual( [ graph.Edge(graph.Node(0), graph.Node(3), 1), graph.Edge(graph.Node(3), graph.Node(5), 11) ], searches.bfs(g, graph.Node(0), graph.Node(5)) )
print("Queue size is: " + str(queue.qsize())) parent = queue.get() room = get_state(parent) neighbors.clear() neighbors = room['neighbors'] print("Constructed Graph: " + str(my_graph)) return my_graph if __name__ == "__main__": # Your code starts here empty_room = get_state('7f3dc077574c013d98b2de8f735058b4') print("Original JSON: " + str(empty_room)) graph = construct_graph_from_json(g.AdjacencyList(), empty_room) #print(transition_state(empty_room['id'], empty_room['neighbors'][0]['id'])) bfs_path = s.bfs(graph, g.Node('7f3dc077574c013d98b2de8f735058b4'), g.Node('f1f131f647621a4be7c71292e79613f9')) if bfs_path: print("Bfs_path: " + str(bfs_path)) else: print("Bfs_path: No Path Found") dijkstra_path = dijkstra_search(graph, g.Node('7f3dc077574c013d98b2de8f735058b4'), g.Node('f1f131f647621a4be7c71292e79613f9')) if dijkstra_path: print("Dijkstra_path: " + str(dijkstra_path)) else: print("Dijkstra_path: No Path Found")