目前我正在使用寻路游戏。我需要帮助来完成这个小游戏。
这是我的路径
S= starting point;
* = can move
# = blocker, you can’t move to it, must move around.
O=end point.
我需要从S到O,我需要从S' S'到了' O'。
char[][] mygrid = {
{'*', '*', '#', 'O', '*'},
{'S', '#', '*', '*', '*'},
{'*', '*', '*', '*', '*'}} ;
上面是我在java中的2D数组。我需要找到来自' S'到了' O'。
我是这个论坛的新人。请帮我这样做。
答案 0 :(得分:2)
您可以使用1
填充开头周围的所有未阻止的单元格。然后在每个2
单元格周围填充1
所有空(未阻塞且未启动)单元格。在每个周围 - 填写3
(1
除外,阻止并开始)。重复,直到最后一个数字周围没有空单元格,或者你到达终点。结果单元格的数字就是结果。
{'1', '*', '#', 'O', '*'} {'1', '2', '#', 'O', '*'} {'1', '2', '#', 'O', '*'}
{'S', '#', '*', '*', '*'} {'S', '#', '*', '*', '*'} {'S', '#', '*', '*', '*'}
{'1', '*', '*', '*', '*'} {'1', '2', '*', '*', '*'} {'1', '2', '3', '*', '*'}
{'1', '2', '#', 'O', '*'} {'1', '2', '#', 'O', '*'} {'1', '2', '#', 'O(6)', '*'}
{'S', '#', '4', '*', '*'} {'S', '#', '4', '5', '*'} {'S', '#', '4', '5', '6'}
{'1', '2', '3', '4', '*'} {'1', '2', '3', '4', '5'} {'1', '2', '3', '4', '5'}