Knaph

Recursion

A function that solves a problem by calling itself on a smaller version of the same problem, until it reaches a base case.

Depth 1 · Foundation

You can write a function that calls itself on a smaller piece of the problem, give it a base case that stops it, follow the calls on the call stack, and recognise a RecursionError when the base case is missing.

Sign in to prove what you know with a short quiz, see how deep you've gone, and earn XP for it.

Sign in with Google

Depths of understanding

  1. 1

    Foundation

    You can write a function that calls itself on a smaller piece of the problem, give it a base case that stops it, follow the calls on the call stack, and recognise a RecursionError when the base case is missing.

Your path here

What's still between you and Recursion, depth 1, in the order you can learn it.

  1. 1ProgramDepth 1 · Foundation · Program Basics
  2. 2ExpressionDepth 1 · Foundation · Program Basics
  3. 3Variables in codeDepth 1 · Foundation · Program Basics
  4. 4Program stateDepth 1 · Foundation · Program Basics
  5. 5Input and outputDepth 1 · Foundation · Program Basics
  6. 6Functions in codeDepth 1 · Foundation · Functions
  7. 7Return valuesDepth 1 · Foundation · Functions
  8. 8BooleansDepth 1 · Foundation · Control Flow
  9. 9ConditionalsDepth 1 · Foundation · Control Flow
  10. 10LoopsDepth 1 · Foundation · Control Flow
  11. 11Accumulator patternDepth 1 · Foundation · Control Flow
  12. 12Floating-point numbersDepth 1 · Foundation · Data Types
  13. 13Basic typesDepth 1 · Foundation · Data Types
  14. 14Character encodingDepth 1 · Foundation · Data Types
  15. 15StringsDepth 1 · Foundation · Data Types
  16. 16ListsDepth 1 · Foundation · Data Structures
  17. 17Nested dataDepth 1 · Foundation · Data Structures
  18. 18RecursionDepth 1 · Foundation · Functions

Where it fits

Makes these deeper

Once you know Recursion, come back to these — they'll mean more.