使用递归和回溯法实现迷宫问题
package recursion; /** * 迷宫采用递归做法 * * @author JustGeeker * */ public class Maze { public static void main(String[] args) { Maze maze = new Maze(); int[][] arr = maze.getMap(8, 8); maze.showMap(arr); System.out.println("==================="); maze.setWay(arr, 1, 1); maze.showMap(arr); } /** * 0 表示没走过,1表示围墙,2表示可用走通,3表示可用走过但是是死路 * * @param len数组长度 * @param wid数组宽度 * @return */ public int[][] getMap(int len, int wid) { int[][] arr = new int[len][wid]; for (int i = 0; i < len; i++) { arr[i][0] = 1; arr[i][wid - 1] = 1; } for (int i = 0; i < wid; i++) { arr[0][i] = 1; arr[len - 1][i] = 1; } arr[2][1