1
我把我的迷宫类的迷宫,我的递归在布尔,所以每次当我尝试将其打印出来,它会回到课程并打印原始地图而不是进度。你有任何其他方式来做到这一点?我有一段代码,它即刻解决迷宫,我希望它打印每一步它使
class Maze {
String[][] (map of the maze)
public void print_maze() {
bla bla bla
} // print the maze
public boolean solve (int i, int j) throws InterruptedException {
Maze labyrinth = new Maze();|
|i tried to print the maze like this
labyrinth.print_maze(); |and they keep printing original maze
|
boolean done = false;
if (valid (i, j)) {
grid[i][j] = "C"; // cell has been tried
if (i== grid[0].length-8 && j == grid[0].length-1)
{done = true;} // maze is solved
else {
done = solve (i+1, j); // down
if (!done)
done = solve (i, j+1); // right
if (!done)
done = solve (i-1, j); // up
if (!done)
done = solve (i, j-1); // left
}
if (done) // part of the final path
grid[i][j] = "X";
// labyrinth.print_maze();
}
return done;
你就不能打印网格? – anaxin
我没有看到您更新迷宫对象的位置。所以无论你打电话到哪里,labyrinth.print_maze()都会打印出原始设计。 – Frank