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 iteration in programming?
Iteration means repeating a set of instructions using loops like for or while until a condition is met.
Click to reveal answer
intermediate
When is recursion better than iteration?
Recursion is better when the problem is naturally divided into similar smaller problems, like tree traversals or factorial calculation, making the code simpler and easier to understand.
Click to reveal answer
intermediate
When is iteration better than recursion?
Iteration is better when performance and memory use are important because it uses less memory and avoids the overhead of function calls, such as in simple loops or large data processing.
Click to reveal answer
intermediate
What is a risk of using recursion in C?
Using recursion in C can cause stack overflow if the recursion is too deep because each function call uses memory on the call stack.
Click to reveal answer
Which method uses function calls to solve smaller parts of a problem?
✗ Incorrect
Recursion solves problems by calling the same function with smaller inputs.
Which method generally uses less memory in C?
✗ Incorrect
Iteration uses loops and does not add function calls to the stack, so it uses less memory.
Which is a natural fit for problems like tree traversal?
✗ Incorrect
Recursion matches the structure of trees, making traversal easier to write.
What can happen if recursion is too deep in C?
✗ Incorrect
Too many recursive calls can exhaust the call stack, causing a stack overflow.
Which method is usually easier to debug for simple repeated tasks?
✗ Incorrect
Iteration uses loops which are straightforward and easier to follow for simple tasks.
Explain when you would choose recursion over iteration and why.
Think about problems that look like smaller copies of themselves.
You got /3 concepts.
Describe the risks and limitations of using recursion in C.
Consider what happens when too many functions call themselves.
You got /3 concepts.