From c1e0a2a2788e55c252305dbf9c4413d4e210d388 Mon Sep 17 00:00:00 2001 From: Zakaria Date: Sat, 31 Aug 2024 19:28:56 +0000 Subject: [PATCH] Updatedagain --- fibonacci.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/fibonacci.java b/fibonacci.java index 06066cc..c3f3597 100644 --- a/fibonacci.java +++ b/fibonacci.java @@ -4,19 +4,26 @@ import java.util.Scanner; * fibonacci */ public class fibonacci { + public static long[] fibonacciCache; public static void main(String[] args) { System.out.println("Let's try to get back on the horse!"); Scanner sc = new Scanner(System.in); System.out.println("Please enter the number you wanna search: "); int fib = sc.nextInt(); sc.close(); + fibonacciCache = new long[1+fib]; System.out.println(fibonacciNum(fib)); } - public static int fibonacciNum(int x){ + public static long fibonacciNum(int x){ if (x <= 1){ return x; } - return (fibonacciNum(x-1)+(fibonacciNum(x-2))); + if (fibonacciCache[x] != 0){ + return fibonacciCache[x]; + } + long nthFib = (fibonacciNum(x-1)+(fibonacciNum(x-2))); + fibonacciCache[x] = nthFib; + return nthFib; } } \ No newline at end of file