摘要:
BFS此题与普通的BFS不同的是它的路径可以重复走,虽然空间代价不大(8*8),但 是如果你不能很好的判断没有出路的情况,那么就会陷入死循环。我是这么想的:我 先定义一个标记数组mark[][],出发点赋值为6。当你走到4时,那点的mark[][]值赋 为6。每次进队列时判断,如果当前点的mark值大于新生成点的mark时,才能进队列, 否则不能,这样就防止了进入死循环的情况。使用mark数组就省略了标记数组vis 不过,有一点,我始终不解,一到达终点就退出,这样保证了时间最短吗?可还是过了,困惑……当然,也有遍历完所有点的#include<iostream>#include< 阅读全文
posted @ 2011-08-01 00:53
枕边梦
阅读(196)
评论(0)
推荐(0)