0
|
1/19
|
- Course overview and introduction
- No labs this week
|
1
|
1/22, 1/24, 1/26
|
- Getting started in Python
- Data types and expressions
- Strings and lists
- A first look at functions
- Problem Set 0 (all) due on 1/28
|
2
|
1/29, 1/31, 2/2
|
- Making decisions (conditional execution)
- Functions (cont.)
- Local and global variables; the runtime stack
- Recursion
- 1/31: last day to add a class
- Problem Set 1, part I due on 2/1
- Problem Set 1, part II due on 2/4
|
3
|
2/5, 2/7, 2/9
|
- Recursion (cont.)
- List comprehensions
- Recursive design
- Problem Set 2, part I due on 2/8
- Problem Set 2, part II due on 2/11
|
4
|
2/12, 2/14, 2/16
|
- Lists of lists; encryption and decryption
- Algorithm design
- Representing information
- Problem Set 3, part I due on 2/15
- Problem Set 3, part II due on 2/18
|
5
|
2/21, 2/23
|
- Binary addition
- Gates and circuits
- Minterm expansion
- No lecture on 2/19 (holiday)
- Labs will be held; Wed. is a Monday schedule
- 2/22: last day to drop without a ‘W’
- Problem Set 4, part I due on 2/22
- Problem Set 4, part II due on 2/25
|
6
|
2/26, 2/28, 3/1
|
- Arithmetic circuits
- Loops and imperative programming
- Cumulative computations
- Midterm 1 on 2/28
- Problem Set 5, part I due on 3/3
|
7
|
3/4, 3/6, 3/8
|
- Loops (cont.); design using loops
- Nested loops
- Problem Set 5, part II due on 3/7
|
|
|
Spring break
|
8
|
3/18, 3/20, 3/22
|
- References; mutable vs. immutable data
- 2-D lists
- Object-oriented programming
- File processing
- Problem Set 6, part I due on 3/21
- Problem Set 6, part II due on 3/24
|
9
|
3/25, 3/27, 3/29
|
- Classes: creating your own types of objects
- Dictionaries
- 3/29: last day to drop with a ‘W’ or
to designate a course Pass/Fail
- Problem Set 7, part I due on 3/28
- Problem Set 7, part II due on 3/31
|
10
|
4/1, 4/3, 4/5
|
- Classes (cont.)
- Midterm 2 on 4/3
- Problem Set 8 (all) due on 4/7
|
11
|
4/8, 4/10, 4/12
|
- Inheritance
- Games and AI
- Overview of the final project
- Problem Set 9, part I due on 4/11
- Problem Set 9, part II due on 4/14
|
12
|
4/17, 4/19
|
- Finite-state machines
- No lecture on 4/15 (Patriots’ Day)
- No labs this week
- Final-project milestone due on 4/21
|
13
|
4/22, 4/24, 4/26
|
- Finite-state machines (cont.)
- Algorithm efficiency
- Problem Set 10 due on 4/25
|
14
|
4/29, 5/1
|
- Algorithm efficiency (cont.)
- Problem “hardness”; Course wrap-up
- Final project due on 4/30
- 5/2-5/3: Study period
|
15
|
|
- Final exam: TBD
- Please wait until your instructor informs you
of the date. The initial exam info. posted by
the Registrar may not be correct.
- Make sure you are available through the end of
the exam period on Friday, May 10!
|