Skip to content

Commit 64bed6d

Browse files
authored
Create FibonacciMemoization.scala
1 parent 513070d commit 64bed6d

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

src/scala/FibonacciMemoization.scala

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
object FibonacciMemoization {
2+
import scala.collection.mutable.Map
3+
4+
val memo: Map[Int, BigInt] = Map()
5+
6+
def fibonacciMemoization(n: Int): BigInt = {
7+
if (n <= 1) {
8+
return n
9+
}
10+
11+
memo.getOrElseUpdate(n, fibonacciMemoization(n - 1) + fibonacciMemoization(n - 2))
12+
}
13+
14+
def main(args: Array[String]): Unit = {
15+
val index = 15
16+
println(s"Fibonacci (memoization) of $index is: ${fibonacciMemoization(index)}")
17+
}
18+
}

0 commit comments

Comments
 (0)