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)))
예제 #3
0
 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))
         )
예제 #4
0
 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))
         )
예제 #5
0
        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")