【发布时间】:2011-04-24 16:42:44
【问题描述】:
我有点理解寻路的概念,以及程序如何以最有效的方式从 A 点查找 B 点,并且对 A* 的概念有点熟悉。但是,如果您不是试图找到一条穿过迷宫的路,而是试图在封闭的迷宫中找到最长的走廊,而该走廊不能在对角线上。
这是我的迷宫示例:
1 1 0 1
0 0 1 1
1 0 1 0
1 0 1 0
如果使用 1 作为允许路径,使用 0 作为无效路径,则最长路径为 5,坐标为 (0,3), (1,2), (1,3), (2,2), (3,2)。
我如何递归地找到这些信息?
我一直在绞尽脑汁思考如何从 (0,0) 开始向上、向下、向左、向右移动,看看这些是否可能移动,但我想出的任何版本都会遇到重复和重复计数。
【问题讨论】:
标签: c# multidimensional-array path-finding