递归与循环的优缺点
(1)递归的优点
代码简洁,而且容易实现。
(2)递归的缺点
[a] 递归由于是函数调用自身,而函数调用是由时间和空间的消耗:每次函数调用,都需要在内存栈中分配空间已保存参数、
返回地址以及临时变量而且往栈里压入和弹出数据都需要时间----效率上的问题
[b] 在前面的分析中提到为每一次函数的调用在内存栈中分配空间,而每个进程中栈的容量是有限得。当递归调用得层级越多时,
就会超出栈得容量,从而导致调用栈溢出----栈溢出得问题
(3)递归的本质
递归的本质是将一个问题分解成两个或者多个小问题
(4)递归得概念
递归是在一个函数得内部调用这个函数自身。
(5)循环得概念
循环是通过设置计算得初始值和终止值。