迷宫求解
伪代码如下,仅供参考。
/*
迷宫求解
求解思路:使用栈和穷举
author:tianlan
time:2017/04/05
version:v1.0
*/
/*
do{
if(当前位置可通){
stack.push(当前位置);
if(当前位置为出口位置){
程序结束
}
else{
切换当前位置的东邻方块为新的当前位置;
}
}
else{
if(栈不空且栈顶位置尚有其他方向未经探索){
设定新的当前位置为沿顺时针方向旋转找到的栈顶位置的下一相邻块;
}
if(栈不空但栈顶位置的四周均不同){
删去栈顶位置;
while(栈不空){
if(stack.top()为可通相邻块)
break;
else
stack.pop();
}
}
}
}while(栈不空)
*/