读书人

迷宫回溯(倒退)有关问题

发布时间: 2012-02-21 16:26:23 作者: rapoo

迷宫回溯(倒退)问题
potion为1,2,3,4分别是向右,下,左,上走。
path为一个包含Position结构体(行数row,列数col)的栈
//迷宫的回溯算法
if(path->IsEmpty())return false;
Position next;
path->Delete(next);
if(next.row==here.row)
potion=2+next.col - here.col;
else option=3+next.row - here.row;
here = next;
}
不明白potion=2+next.col - here.col;和else option=3+next.row - here.row;这两句有什么用,直接跳过这两句执行here=next不就可以了?望高手指点一二。

[解决办法]
想知道更多的信息。不然还是不懂题目说啥。
[解决办法]
if(next.row==here.row)
potion=2+next.col - here.col;
else option=3+next.row - here.row;
看代码应该是判断前方是不是障碍,如果是障碍的话往别的方向走,不是障碍的话就接着往前走。
如果没判断的话直接here = next;有可能走到障碍上面去

读书人网 >C++

热点推荐