所以我有一种方法可以在扫雷游戏中级联显示。我有一个解决方案板和一个当前网格。但问题是,当我遇到 0 个空格时,递归调用时会出现堆栈溢出错误。
有没有人有任何想法?
public static void revealCell(int row, int col, char[][] grid, char[][] answers) {
System.out.println(row + " " + col);
if(row < 0|| row > 4){
System.out.println("bad");
return;
}
if(col < 0|| col > 4){
System.out.println("bad");
return;
}
if(answers[row][col] == 'B'){
grid[row][col] = answers[row][col];
return;
}
if(answers[row][col] == '1'||answers[row][col] == '2'||answers[row][col] == '3'||answers[row][col] == '4'||answers[row][col] == '5'){
grid[row][col] = answers[row][col];
return;
}
if(answers[row][col] == '0'){
System.out.println("go");
grid[row][col] = answers[row][col];
for(int i = row-1; i <= row +1; i++){
for(int j = col-1; j<= col +1;j++){
revealCell(i,j, grid, answers);
}
}
}
}