Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

DATA88C.2 - Recursion and Object-Oriented Programming

About this course (Part 2 of 3): C88C: Computational Structures in Data Science introduces computational thinking and programming concepts specifically tailored for data science applications. The course covers fundamental programming constructs, data structures, algorithms, and computational problem-solving techniques. Part 2 focuses on recursion, abstract data types (ADTs), and object-oriented programming (OOP) in Python, building directly on the foundations from Part 1.

Topics

Part 2 (sometimes listed as 88.2X on edX) includes 5 modules:

  1. Module 8: Abstract Data Types - ADTs, the Point ADT, and examples (e.g., bank accounts).

  2. Module 9: Recursion - Introduction to recursion, countdown, sum, sequences, and palindromes.

  3. Module 10: Tree Recursion - Tree recursion and applications (e.g., counting change, Fibonacci).

  4. Module 11: Object-Oriented Programming (OOP) - Classes, attributes, magic methods, and the OOP style.

  5. Module 12: OOP - Inheritance - Inheritance and extending classes.

The part ends with Review and Wrap-up for 88.2X.

Structure and assignments