From 991d40ad2ef453c4d490844fd7eda6da58e548fc Mon Sep 17 00:00:00 2001 From: Roshan Mallick Date: Thu, 16 Apr 2026 21:23:35 +0530 Subject: [PATCH] improve: replace recursive fibonacci with iterative optimized solution --- leetcode/src/509.c | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/leetcode/src/509.c b/leetcode/src/509.c index 8129354bc5..275d9b0f05 100644 --- a/leetcode/src/509.c +++ b/leetcode/src/509.c @@ -1,8 +1,13 @@ -int fib(int N) -{ - if (N == 0) - return 0; - if (N == 1) - return 1; - return fib(N - 1) + fib(N - 2); +int fib(int n) { + if (n <= 1) return n; + + int a = 0, b = 1, c; + + for (int i = 2; i <= n; i++) { + c = a + b; + a = b; + b = c; + } + + return b; }