Lecture

What is Recursive Call?

Recursion refers to a function calling itself. It is often used to express mathematical functions like factorials and Fibonacci sequences.

Factorial Recursive Function Example
def factorial(n): if n == 0: # Base case return 1 # Recursion ends else: # Recursive call return n * factorial(n-1) # Calls itself with n-1 as argument # Example: Calculating factorial of 5 factorial_result = factorial(5) print("factorial_result:", factorial_result) # factorial_result: 120

Recursive functions are useful for solving complex problems by breaking them down into simpler, repetitive tasks.


Base Case

Every recursive function needs a termination condition, known as the base case. The base case defines the stopping point of the recursion.

For instance, in the factorial function above, the statement if n == 0 is the base case that ends the recursion.

This condition ensures that when n becomes 0 or less, the function stops calling itself and terminates.


Pros and Cons of Using Recursion

Pros:

  1. The code is cleaner and easier to understand.

  2. It allows complex problems to be expressed concisely.

  3. It is particularly useful for naturally implementing data structures and algorithms.


Cons:

  • Each function call uses memory, which may lead to higher memory usage.

  • If not implemented correctly, it can lead to infinite loops.

Lecture

AI Tutor

Publish

Design

Upload

Notes

Favorites

Help