码迷,mamicode.com
首页 > 编程语言 > 详细

算法---栈总结篇

时间:2018-12-18 19:49:36      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:有一个   思路   code   www.   缩小   就是   log   重复   规模   

有段话来理解递归,感觉不错:

你打开面前这扇门,看到屋里面还有一扇门。你走过去,发现手中的钥匙还可以打开它,你推开门,发现里面还有一扇门,你继续打开它。若干次之后,你打开面前的门后,发现只有一间屋子,没有门了。然后,你开始原路返回,每走回一间屋子,你数一次,走到入口的时候,你可以回答出你到底用这你把钥匙打开了几扇门。

递归的精髓

递归就是有去(递去)有回(归来),如下图所示。“有去”是指:递归问题必须可以分解为若干个规模较小,与原问题形式相同的子问题,这些子问题可以用相同的解题思路来解决,就像上面例子中的钥匙可以打开后面所有门上的锁一样;“有回”是指 : 这些问题的演化过程是一个从大到小,由近及远的过程,并且会有一个明确的终点(临界点),一旦到达了这个临界点,就不用再往更小、更远的地方走下去。最后,从这个临界点开始,原路返回到原点,原问题解决。 

递归的三要素:

1.明确递归终止条件;
2.给出递归终止时的处理办法;
3.提取重复的逻辑,缩小问题规模.

 参考文献:递归的精髓是什么?

 

 
 

算法---栈总结篇

标签:有一个   思路   code   www.   缩小   就是   log   重复   规模   

原文地址:https://www.cnblogs.com/nxf-rabbit75/p/10138858.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!