levo

Recursion and Modular Programming

Recursion and the base case

  • 3 things to know
  • Component 1

Overview

Base case, two essential parts of any recursive definition and what is meant by the depth of recursion.

What you need to know

Answer each one before you reveal it.

Your recallNot started
Key term

What must every recursive definition contain, and what happens without it?

Key term

What is recursion?

Key term

What is a base case, and why must a recursive subprogram have one?

Questions from this subtopic

Each one with the model answer underneath.

  1. 1

    What is recursion?

    Model answer

    Recursion is a technique in which a subprogram calls itself to solve a smaller version of the same problem. Each call works on a simpler case than the one before.

  2. 2

    What is a base case, and why must a recursive subprogram have one?

    Model answer

    A base case is a condition that returns an answer without any further call. Without a base case the recursion never stops and the program crashes.

  3. 3

    State the two essential parts of any recursive definition.

    Model answer

    A recursive definition needs a base case that stops the recursion. A recursive case then calls the subprogram on a smaller problem.

  4. 4

    What happens if the recursive case never moves towards the base case?

    Model answer

    The subprogram calls itself for ever and the call stack fills. The program halts with a stack overflow error.

  5. 5

    Give the recursive definition of the factorial of a positive integer n.

    Model answer

    The factorial of 0 is defined as 1. The factorial of n is n multiplied by the factorial of n − 1.

  6. 6

    Why is a recursive solution often described as elegant?

    Model answer

    A recursive solution expresses the problem almost exactly as it is defined mathematically. The code is short and its intention is clear.

Other ways to work this

The same content, four other ways.

What is inside Levo

Six ways to work the same material.

1Closed book
2Open book
3Closed book

The 3-step method, run for you

Answer cold, learn it, then prove it stuck. Levo tracks the jump between your first attempt and your last.

Data Structures: Arrays, Records and Hash Tables
Stacks, Queues, Linked Lists and Trees
Boolean Logic and Simplification
Algorithms, Pseudo-Code and Programming Constructs

Cram a whole paper in one sitting

Sort every topic into what you know and what you do not, then drill only the weak ones.

KDW to HAT.
decryptsencryptscompresses

Blank Blitz makes facts automatic

Rapid timed gap-fills on the terms and numbers you need to recall without thinking.

AThe two are not the same.
BOpen source refers to the availability of the code.
CMuch open source software is free of charge.

Build It gets the exam shape right

Assemble a full-mark answer from its marking points, in the order an examiner wants them.

Backup means the copy of the data.
TrueFalse

Test It catches misconceptions

Spot the fault in a statement. The traps are the mistakes students actually make.

721941163128510

Brain Breaks between sessions

Short focus games to reset attention, so the next set lands better than the last.

Every question in Recursion and Modular Programming, on a schedule.

Attempt a question from memory, write the correct version, then attempt it again. Levo records the jump between your first attempt and your last, and brings each question back on the day you are due to forget it.

Or £46 a year, about £3.83 a month. Cancel anytime.