首页 > 技术文章 > 递归与迭代

gstsyyb 2014-06-15 08:53 原文

===============================================

1.递归:发出一次请求。

2.迭代:发出多个请求。

===============================================

递归:未知问题--分解---已知问题---合并---出结果 (按照规则分解--再合并)

求解5!的阶乘?
1.5!= 5 * 4!
2.5   = 5  * 4 * 3!
3.5!  = 5  * 4 * 3 * 2!
4.5!  = 5  * 4 * 3 * 2 * 1!
5.5!  = 5  * 4 * 3 * 2 * 1*1
6.5!  = 5  * 4  *3  *2  * 1
7.5!  = 5  * 4  *3  *2
8.5!  = 5  * 4  *6
9.5!  = 5  * 24
10.5! =120
 
这种算法就是对问题进行分解,最后知道原子问题,而原子问题便是一直问题,再次进行回归,最后便可以知道问题的结果。
算是一种演绎思想
迭代:广度优先的遍历算法
递归:深度优先的遍历算法
=======================================================

 

推荐阅读