最新消息:

自动走迷宫(3)–深度优先(递归遍历)

Scratch 少儿编程 2368浏览 0评论

友情提示:视频教程观看时请手动设置清晰度。

计算机科学是这样描述递归的:

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

 

自动走迷宫(3)--深度优先(递归遍历)

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

 

递归方式:

 

自动走迷宫(3)--深度优先(递归遍历)

 

主程序

 

 

 

自动走迷宫(3)--深度优先(递归遍历)

其他相关文章:

 

生成随机迷宫(1)–prim算法

生成随机迷宫(2)–深度优先(递归回溯)算法

自动走迷宫(1)–左手法则

自动走迷宫(2)–深度优先(非递归)算法

转自公众号:
嘻嘻哈哈学编程

您必须 登录 才能发表评论!