0
0
DSA Typescriptprogramming~5 mins

Recursion Concept and Call Stack Visualization in DSA Typescript - Cheat Sheet & Quick Revision

Choose your learning style9 modes available
Recall & Review
beginner
What is recursion in programming?
Recursion is when a function calls itself to solve smaller parts of a problem until it reaches a simple case it can solve directly.
Click to reveal answer
beginner
What is a base case in recursion?
A base case is the simplest situation in recursion where the function stops calling itself to avoid infinite loops.
Click to reveal answer
intermediate
How does the call stack work with recursion?
Each recursive call adds a new layer to the call stack. When a base case is reached, the stack starts to remove layers as functions finish and return results.
Click to reveal answer
intermediate
What happens if a recursive function has no base case?
Without a base case, the function keeps calling itself forever, causing a stack overflow error because the call stack grows too large.
Click to reveal answer
beginner
Explain the flow of a simple factorial function using recursion.
The factorial function calls itself with smaller numbers until it reaches 0 (base case). Then it multiplies the numbers as the calls return, building the final result.
Click to reveal answer
What is the purpose of the base case in a recursive function?
ATo stop the recursion and prevent infinite calls
BTo call the function again
CTo increase the call stack size
DTo make the function run faster
What happens to the call stack when a recursive function calls itself?
AThe stack is cleared
BThe stack size decreases
CA new frame is added to the stack for each call
DNothing changes
Which of these is a correct base case for a factorial function?
Afactorial(n) = n + factorial(n - 1)
Bfactorial(1) = 0
Cfactorial(n) = n * factorial(n + 1)
Dfactorial(0) = 1
What error occurs if a recursive function never reaches a base case?
ASyntax error
BStack overflow error
CType error
DMemory leak
In recursion, what does 'unwinding the call stack' mean?
AReturning from recursive calls one by one
BAdding new calls to the stack
CClearing all variables
DStarting recursion again
Describe how recursion uses the call stack to solve problems step-by-step.
Think about how each call waits for the next before finishing.
You got /4 concepts.
    Explain why a base case is essential in recursion and what happens if it is missing.
    Consider what would happen if the function never stops calling itself.
    You got /4 concepts.