scala编写斐波那契数计算第15项的值
时间: 2024-09-14 16:15:02 浏览: 36
Scala脚本在分布式计算中的实践与应用
Scala是一种多范式编程语言,它将面向对象和函数式编程的概念结合在一起。斐波那契数列是一个经典的编程问题,通常用来展示递归和迭代算法。在Scala中,可以使用递归或者迭代的方式来计算斐波那契数列的第n项。
这里提供一个简单的递归方法和一个简单的迭代方法来计算斐波那契数列的第15项。
递归方法:
```scala
def fibonacci(n: Int): Int = n match {
case 0 => 0
case 1 => 1
case _ => fibonacci(n - 1) + fibonacci(n - 2)
}
val fibonacci15 = fibonacci(15)
```
这个递归方法虽然简洁,但是效率不高,因为它会重复计算很多子问题。
迭代方法:
```scala
def fibonacciIterative(n: Int): Int = {
var a = 0
var b = 1
for (_ <- 0 until n) {
val c = a + b
a = b
b = c
}
a
}
val fibonacci15 = fibonacciIterative(15)
```
迭代方法效率更高,因为它避免了重复计算,直接通过循环计算得到结果。
计算斐波那契数列的第15项,使用上述任一方法,结果应该是610。
阅读全文