Lecture Slides and Code

The slides and code from each lecture are available below.

SES # TOPICS LECTURE SLIDES LECTURE CODES
1 What is computation? Slides for Lecture 1 (PDF) Code for Lecture 1 (PY)
2 Branching and Iteration Slides for Lecture 2 (PDF) Code for Lecture 2 (PY)
3 String Manipulation, Guess and Check, Approximations, Bisection Slides for Lecture 3 (PDF) Code for Lecture 3 (PY)
4 Decomposition, Abstractions, Functions Slides for Lecture 4 (PDF 1.1MB) Code for Lecture 4 (PY)
5 Tuples, Lists, Aliasing, Mutability, Cloning Slides for Lecture 5 (PDF) Code for Lecture 5 (PY)
6 Recursion, Dictionaries Slides for Lecture 6 (PDF - 1.3MB) Code for Lecture 6 (PY)
7 Testing, Debugging, Exceptions, Assertions Slides for Lecture 7 (PDF) Code for Lecture 7 (PY)
8 Object Oriented Programming Slides for Lecture 8 (PDF) Code for Lecture 8 (PY)
9 Python Classes and Inheritance Slides for Lecture 9 (PDF - 1.6MB) Code for Lecture 9 (PY)
10 Understanding Program Efficiency, Part 1 Slides for Lecture 10 (PDF) Code for Lecture 10 (PY)
11 Understanding Program Efficiency, Part 2 Slides for Lecture 11 (PDF) Code for Lecture 11 (PY)
12 Searching and Sorting Slides for Lecture 12 (PDF - 2.4MB) Code for Lecture 12 (PY)

Course Info

Learning Resource Types
Problem Sets
Lecture Notes
Lecture Videos
Programming Assignments with Examples