Textbook
The textbook is Guttag, John. Introduction to Computation and Programming Using Python: With Application to Understanding Data Second Edition. MIT Press, 2016. ISBN: 9780262529624. The book and the course lectures parallel each other, though there is more detail in the book about some topics. It is available both in hard copy and as an e-book.
SES # | TOPICS | READINGS |
---|---|---|
1 | What is computation? | Chapters 1 and 2.1 |
2 | Branching and Iteration | Chapters 2.2, 2.3.1, 2.4, and 3.2 |
3 | String Manipulation, Guess and Check, Approximations, Bisection | Chapters 3.1 and 3.3–3.5 |
4 | Decomposition, Abstractions, Functions | Chapters 4.1–4.2 and 4.4–4.6 |
5 | Tuples, Lists, Aliasing, Mutability, Cloning | Chapters 5.1–5.3.1 and 5.4–5.5 |
6 | Recursion, Dictionaries | Chapters 4.3 and 5.6 |
7 | Testing, Debugging, Exceptions, Assertions | Chapters 6 and 7 |
8 | Object Oriented Programming | Chapter 8.1 |
9 | Python Classes and Inheritance | Chapter 8.2 |
10 | Understanding Program Efficiency, Part 1 | Chapters 9.1–9.3.1, 9.3.3, and 9.3.5 |
11 | Understanding Program Efficiency, Part 1 (Cont.) | Chapters 9.3.2, 9.3.4, 9.3.6, and 9.3.7 |
12 | Searching and Sorting algorithms | Chapters 10.1–10.2 |