PHP递归似乎并没有遍历所有途径

时间:2018-10-21 09:37:44

标签: php recursion maze

该程序应查找通过迷宫的所有可能方式,并将其最远的距离保存在全局变量中。相反,它只经过一条路径然后结束?我猜我没有正确使用递归或其他东西。 $ draw_co2是0和1s组成的数组,其中1是路径,0是墙。我已经将$ GLOBALS ['route']收集的点的输出包括在下面的迷宫自身的顶部。根据代码,我希望整个主要的红色分支都是白色的?

我在使用else而不是其他。如下所述,请使用else来探索所有分支。

1 个答案:

答案 0 :(得分:2)

代码段中的递归没有问题。我最好的猜测是,可能导致此问题的唯一原因是$draw_co2。我认为$draw_co2中没有递归可以遍历的路径。为了进行测试,我建议在数组$draw_co2中创建一个确定的路径,并在递归函数中传递起始坐标。希望对您有所帮助。

编辑

如果将所有else if更改为仅if,则可以遍历所有路径。