计算机科学是这样描述递归的:
递归算法是一种直接或者间接调用自身函数或者方法的算法。递归算法的实质是把问题分解成规模缩小的同类问题的子问题,然后递归调用方法来表示问题的解。递归算法对解决一大类问题很有效,它可以使算法简洁和易于理解。

递归简单来说就是自己调用自己,但凡有循环的地方都可以用递归来替代,循环其实可以看成是一种特殊的尾递归,因为尾递归不用回溯,所以与循环模式没有实质上的改变。今天就是使用尾递归来替代循环实现迷宫寻址,只要注意设置好尾递归的终止条件,代码还是非常简单的。
递归方式:

主程序:

其他相关文章:
生成随机迷宫(1)–prim算法
生成随机迷宫(2)–深度优先(递归回溯)算法
自动走迷宫(1)–左手法则
自动走迷宫(2)–深度优先(非递归)算法
转自公众号:
嘻嘻哈哈学编程