from node import Node from problem import Problem from search import Search p = Problem() s = Search(p) r = s.BFS() print(r.status) path = r.path path.reverse() print(path) print("number of visited : ") print (r.expandedNodes) print("number of expansions : ") print (r.expansions)
from display import Display from search import Search d = Display(20,20) grid, start, target = d.make_grid(weight=True) s = Search(grid, start, target) visited = s.DFS_iterative(branches=False) path = s.make_path() d.draw_visited(visited) d.draw_path(path) d.reset_grid(weight=False) s.DFS_recursive(start) visited = s.visited path = s.make_path() d.draw_visited(visited) d.draw_path(path) d.reset_grid() visited = s.BFS() path = s.make_path() d.draw_visited(visited, distance=True) d.draw_path(path)
elif menu.setting_end: grid.set_end_point() if menu.build: grid.build_wall() elif menu.remove: grid.remove_wall() if menu.run(): for row in grid.grid: for node in row: node.visited = False node.in_path = False if menu.BFS: search.BFS(grid.start_node, grid.end_node) elif menu.DFS: search.DFS(grid.start_node, grid.end_node) elif menu.A_star: search.a_star(grid.start_node, grid.end_node) # call back function for menu options menu.choose_serach() menu.build_walls() menu.remove_walls() menu.set_start() menu.set_end() menu.visulise() menu.clear_clicked() menu.choose_serach()
from node import Node from problem import Problem from search import Search p = Problem() s = Search(p) path = s.BFS().path path.reverse() print(path)