【未完】【java算法】迷宫求解

来源:互联网 发布:淘宝网安全背心 编辑:程序博客网 时间:2024/06/07 20:43

迷宫求解算法,用到了栈的知识对迷宫的通路进行求解,最后的通路保存在栈当中。有时间把完整的算法给出。

public class Test4_2{int m = 6;int n = 8;Stack<DataType> s = new Stack<>();public int path(int[] maze,Move[] move){DataType temp = new DataType();int x,y,d,i,j;temp.setX(1);temp.setY(1);temp.setD(-1);s.push(temp);while(!s.isEmpty()){temp = s.pop();x = temp.getX();y = temp.getY();d = temp.getD()+1;while(d<8){i = x+move[d].getX();j = y+move[d].getY();if(maze[i][j]==0){temp = new DataType();temp.setX(x);temp.setY(y);temp.setD(d);s.push(temp);x=i;y=j;maze[x][y]=-1;//当找到出口时if(x==m&&y==n){return 1;   //迷宫有路}else{d = 0;}}else{d++;}}}return 0; //迷宫无路}}//栈中保存的就是一条迷宫的通路


0 0