当前位置:   article > 正文

递归函数优化--尾递归_如何把递归方法改写为尾递归 方法java

如何把递归方法改写为尾递归 方法java

铺垫

函数的调用会在内存中形成一个调用记录,也称作“调用帧”,用来保存调用位置和内部变量等信息。内存中用一个栈结构来保存调用帧,也称“调用栈”。函数被调用时调用帧入栈,函数返回时调用帧弹栈。

当发生函数的嵌套时,如在A函数中调用B函数,就会有连续的两个调用帧入栈

  1. function A(){
  2. ...
  3. B();
  4. ...
  5. }

当B函数返回时,B调用帧弹栈,继续执行A函数,当A函数返回时,A调用帧弹栈

递归函数就是在函数内部不断调用自身,直到满足特定条件

递归函数的缺点

递归函数在函数内部不断调用自身,导致调用栈快速增大,这是很浪

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/116240
推荐阅读
相关标签
  

闽ICP备14008679号