Friday, 4 April 2025

Python Coding challenge - Day 428| What is the output of the following Python Code?

 


Code Explanation:

1. Import lru_cache

from functools import lru_cache

lru_cache stands for Least Recently Used cache.

It's a decorator that caches the results of function calls so repeated inputs don't recompute.

2. Define Fibonacci Function with Memoization

@lru_cache()

def fib(n):

    return n if n < 2 else fib(n - 1) + fib(n - 2)

This is a recursive function for computing Fibonacci numbers.

Base case: If n is 0 or 1, return n directly.

Recursive case: Add the previous two Fibonacci numbers:

F(n)=F(n−1)+F(n−2)

@lru_cache() stores the result of each call so fib(5) doesn’t recalculate fib(4) and fib(3) again — this drastically improves performance!

3. Compute fib(10)

print(fib(10))

The 10th Fibonacci number (using 0-based indexing) is:

F(0)=0F(1)=1F(2)=1F(3)=2F(4)=3F(5)=5F(6)=8F(7)=13F(8)=21F(9)=34F(10)=55

Output:

55

Related Posts:

0 Comments:

Post a Comment

Popular Posts

Categories

100 Python Programs for Beginner (106) AI (41) Android (24) AngularJS (1) Api (2) Assembly Language (2) aws (17) Azure (7) BI (10) book (4) Books (200) C (77) C# (12) C++ (83) Course (67) Coursera (252) Cybersecurity (25) Data Analysis (3) Data Analytics (3) data management (11) Data Science (149) Data Strucures (8) Deep Learning (21) Django (16) Downloads (3) edx (2) Engineering (14) Euron (29) Events (6) Excel (13) Factorial (1) Finance (6) flask (3) flutter (1) FPL (17) Generative AI (11) Google (36) Hadoop (3) HTML Quiz (1) HTML&CSS (47) IBM (30) IoT (1) IS (25) Java (93) Java quiz (1) Leet Code (4) Machine Learning (86) Meta (22) MICHIGAN (5) microsoft (4) Nvidia (4) Pandas (4) PHP (20) Projects (29) pyth (1) Python (1065) Python Coding Challenge (463) Python Quiz (135) Python Tips (5) Questions (2) R (70) React (6) Scripting (3) security (3) Selenium Webdriver (4) Software (17) SQL (42) UX Research (1) web application (8) Web development (4) web scraping (2)

Followers

Python Coding for Kids ( Free Demo for Everyone)