美文网首页
"尾函数"

"尾函数"

作者: 践行者 | 来源:发表于2017-03-29 23:22 被阅读61次

    尾调用

    1.尾调用是函数编程的重要概念,指某一个函数的最后一步调用了另一个函数

    2.尾调用不一定出现在函数的最后,但一定是函数的最后一步操作

    3.函数调用内部形成一个调用桢,保存调用的位置和内部变量等信息,内部的函数嵌套形成 调用栈,尾调用由于是函数最后一个操作,由于位置信息和内部变量步子使用,可以用最后一个函数的调用帧取代外层函数的调用帧,这就是所谓的 尾调用优化

    4.只有不在用到外层函数的内部变量,内部函数的调用帧才会取代外层的调用帧

    尾递归

    1.函数调用自身,为递归;尾调用调用自身,则为尾递归;

    2.递归耗费内存是由于需要保存函数的调用帧引起的,容易栈溢出,但是对于尾递归只存在一个调用帧,所以不会发生 栈溢出的错误

    3.改写递归函数为尾递归: 把所有用到的内部变量改写为函数的参数

    柯里化currying:将多参数的函数转化为单参数的形式

    相关文章

      网友评论

          本文标题:"尾函数"

          本文链接:https://www.haomeiwen.com/subject/dvayottx.html