【发布时间】:2015-02-03 02:12:37
【问题描述】:
我正在研究一个机器人迷宫,机器人可以在其中找到目标而不会撞到墙壁。作为一种“回溯”方法,我需要机器人像第一次遇到路口时那样朝相反的方向前进。这是我的代码:
【问题讨论】:
-
如果我理解正确的话,你的机器人需要“记住”在一个特定的路口 (x,y),对吧?我认为这是因为当您随机选择多个可用路径之一时,您不想选择之前已经选择的路径。如果我对此有误解,请纠正我。
-
@ChthonicProject 是正确的。我通过将它们存储在数组列表中来“记住”它遇到的所有连接。然而,当它已经走完所有的路径时,它需要沿着它最初来的路径走。这有意义吗?
-
仅供参考:这是“何时使用递归”一书中的经典问题,可以通过使用递归更优雅地解决。只是为了理解递归,你首先需要理解递归。 ;)
-
啊,我明白了。但在那种情况下,
ArrayList<Junction>上的get(0)不应该给你你需要的吗?