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

Choosing data structures, with a Python refresher

CYB404 · Algorithms and Data Structures — Week 2 of 16

CourseCYB404
Week2 of 16
SemesterII
TutorOnline in the course chat

This week’s topics

Choosing data structures, with a Python refresher

  1. Choosing data structures: impact on running time and space
  2. Python and Jupyter refresher

What you will be able to do

  • 1.3 Analyse the impact of the choice of data structure on algorithmic performance.

Activity

Start with this week’s 4 videos, then: Seminar, guided reading and a short written task: analyse the impact of the choice of data structure on algorithmic performance.

Study materials

Videos

  • Python Programming Tutorial #1 - Variables and Data Types · YouTube · Tech With Tim · 11 min · for registered students
  • Python Tutorial for Beginners 6: Conditionals and Booleans - If, Else, and Elif Statements · YouTube · Corey Schafer · 16 min · for registered students
  • Python Tutorial for Beginners 7: Loops and Iterations - For/While Loops · YouTube · Corey Schafer · 10 min · for registered students
  • Functions in Python are easy 📞 · YouTube · Bro Code · 11 min · for registered students

Further resources

  • Think Python, ch. 13: Case study – data structure selection · PDF · Downey, Think Python 2e (Green Tea Press), ch. 13: a second worked mini project from problem to tested program, pp. 125–136 · for registered students
  • Introduction to Python Programming, 1.3–1.5: Variables, strings, numbers · PDF · OpenStax Introduction to Python Programming (2024), 1.3–1.5: variables, string basics, integers and floats, pp. 14–22 · for registered students
  • Introduction to Python Programming, ch. 6: Functions · PDF · OpenStax Introduction to Python Programming (2024), ch. 6: defining functions, parameters, return values and keyword arguments, pp. 137–163 · for registered students
  • Understanding students' failure to use functions as a tool for abstraction (CS1 Python) · Open-access article · Haglund et al. (2021), Informatics in Education. Why CS1 Python students avoid defining their own functions, with examples. · 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