ОСНОВНОЙ АЛГОРИТМ для BFS приведен ниже. Требуется очень много времени, когда endRow и endColumn находятся далеко от startRow и startColumn, чтобы найти путь между startPoint и endPoint в сетке 10x10. Любое логическое объяснение о том, как сократить время выполнения?
nums = Queue.Queue()
nums.put("")
add = ""
maze = createMaze()
maze[endRow][endColumn] = "O"
while not findEnd(maze, add):
add = nums.get()
#print(add)
for j in ["L", "R", "U", "D"]:
put = add + j
if valid(maze, put):
nums.put(put)