5树的递归
树的递归
尾递归
递归的优化
原理:递归本身会创造一个副本,但原先的副本未被释放,导致堆空间占用过多。
尾递归在递归的尾部调用自己,但原本函数已经结束,无需等待计算。最后一次调用的结果直接返回给初始调用。
即当递归调用是整个函数体中最后执行的语句且它的返回值不属于表达式的一部分
特点是在回归过程中不用做任何操作。
例子:
int add(int x,int sum) |
注:尾递归是编译器的优化
之前的代码补全
|
发布于
递归的优化
原理:递归本身会创造一个副本,但原先的副本未被释放,导致堆空间占用过多。
尾递归在递归的尾部调用自己,但原本函数已经结束,无需等待计算。最后一次调用的结果直接返回给初始调用。
即当递归调用是整个函数体中最后执行的语句且它的返回值不属于表达式的一部分
特点是在回归过程中不用做任何操作。
int add(int x,int sum) |
注:尾递归是编译器的优化
|