#include #include #define N 5 using namespace std; struct note { int x,y,pre;//存放坐标,前一个节点的位置 } que[100]; int maze[N][N]; int Nx[4]= {1,-1,0,0}; //x轴变化方向 int Ny[4]= {0,0,-1,1}; //y轴变化方向 int start=0,end=1;//用数组模拟一个队列 //输出结果 void print(int s) { if(que[s].pre!=-1) { //递归输出 print(que[s].pre);//根据查找前一个的位置来递归 cout<<"("<=N || b>=N || maze[a][b])//如果出界或者遇到墙 continue; else { maze[a][b]=-1;//设置已经访问过 //入队 que[end].pre=start; que[end].x=a; que[end].y=b; end++;//数组大小 } //如果发现输出结果 if(a==N-1 && b==N-1) print(start); } start++; } } int main() { // 输入迷宫地图 // for(i=0;i