Business and technology qualifications, Levels 3-6, in Brussels. Explore qualifications
Portal login
Level 4 Diploma in Cyber Security

Recursion and memoisation (e.g. Tower of Hanoi); the memory vs. complexity trade-off

CYB404 · Algorithms and Data Structures — Week 5 of 16

CourseCYB404
Week5 of 16
SemesterII
TutorOnline in the course chat

This week’s topics

Recursion and memoisation (e.g. Tower of Hanoi); the memory vs. complexity trade-off

  1. Recursion and memoisation (e.g. Tower of Hanoi)
  2. The memory vs. complexity trade-off

What you will be able to do

  • 3.1 Use recursion and memoisation as tools to design solutions to problems.
  • 3.3 Explain the trade-off between memory and computational complexity in algorithmic design.

Activity

Seminar, guided reading and a short written task: use recursion and memoisation as tools to design solutions to problems.

Study materials

Further resources

  • Think Python, ch. 5: Conditionals and recursion · PDF · Downey, Think Python 2e (Green Tea Press), ch. 5: Boolean expressions, logical operators, conditional and chained execution, pp. 39–50 · for registered students
Materials marked “for registered students” open in the student portal, which is set up as soon as you receive final acceptance.
Course chat

Admitted students ask questions on this week’s page in the student portal: an AI assistant trained on the course answers first, and during the course’s timetabled classes Connect to your tutor brings your tutor into the chat, who may start a call if needed.

Open this week in the portal
Course plan
  • Week 1: Data structures: arrays, lists, stacks, queues, sets and di…
  • Week 2: Choosing data structures, with a Python refresher
  • Week 3: Measuring complexity: Big O notation
  • Week 4: Problem classes: computability and Turing machines, P and N…
  • Week 5: Recursion and memoisation (e.g. Tower of Hanoi); the memory…
  • Week 6: Algorithmic paradigms: divide and conquer, backtracking, gr…
  • Week 7: Sort, search and pathfinding algorithms compared by time an…
  • Midterm: Midterm evaluation
  • Week 9: Writing pseudocode as a universal template for algorithms
  • Week 10: Checking algorithms are correct: tracing, testing and timing
  • Week 11: Debugging and testing implementations; review and practice …
  • Week 12: Applying Algorithms and Data Structures in practice: case s…
  • Week 13: Assignment workshop: research, planning and referencing
  • Week 14: Assignment workshop: drafting, feedback and improvement
  • Week 15: Review and coursework completion
  • Final: Final assessment and submission
Back to the course
Scroll