码迷,mamicode.com
首页 > 其他好文 > 详细

[Notes] 简单的 Scala 尾递归函数

时间:2018-06-10 20:42:30      阅读:141      评论:0      收藏:0      [点我收藏+]

标签:note   scala   print   iter   tail   TE   each   foreach   extends   

以斐波那契数列的计算函数为例, 实践 Scala 中尾递归函数的编写

object Test extends App {
  def fib(n: Int): Int = {
    @annotation.tailrec
    def fib_iter(f0: Int, f1: Int, cnt: Int): Int =
      if (cnt <= 0) f0
        else fib_iter(f1, f0+f1, cnt-1)
    fib_iter(0, 1, n)
  }
  
  (0 until 10).foreach { n => println(fib(n)) }
}

[Notes] 简单的 Scala 尾递归函数

标签:note   scala   print   iter   tail   TE   each   foreach   extends   

原文地址:https://www.cnblogs.com/wander4096/p/9164222.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!