Schedule
We're So Glad to Have You with Us!
This offering of CS70 will be a “flipped” course. Each week, two lessons, one homework assignment, and one group of proficiency checks will be released on the website. You can access each week's material through the schedule below. In class, you can work with your partner on homework and ask professors and grutors about the homework and course material.
Many questions about the course are answered in the Course Policies section. Extra reference documentation related to topics we cover in class is posted in the Help Pages. If you have questions, please post on Piazza, or reach out during office hours and grutoring hours!
Topic Schedule
| Week | First Lesson | Second Lesson |
|---|---|---|
| Week 1: Aug 28 | Introduction, Single Variables, and Memory Models |
Object Lifetime for Primitives, Numeric Types, Promotion/Conversion, signed/unsigned (size_t)
|
| Week 2: Sep 4 |
Compilation, Version Control, Pair Programming
No class on Monday, Sep 4 (Labor Day)
Goals 3A
|
Arrays of Primitives, Style, Testing |
| Week 3: Sep 11 | Separate Compilation |
References
Goals 4A
|
| Week 4: Sep 18 | Classes in C++: Data Members, Include Guards, Member Initializers, Scope Operator | Object Lifetime (Part 1, On the Stack) |
| Week 5: Sep 25 | Pointers (Part 1) | Pointers (Part 2) |
| Week 6: Oct 2 |
Second Proficiency Tries for Groups 1,
2, and 3
No class on Monday, Oct 2; office hours instead |
Object Lifetime (Part 2, On the Heap) |
| Week 7: Oct 9 | Pointers (Part 3) / Object Lifetime (Part 3) / Temporaries, Return Values, and Overloading | Interface/Encoding, Iterator Validity |
|
Complexity (Parts 1 & 2), Asymptotic Analysis, Best/Worst/Average Cases
No new homework or PCs this week; extra lesson content instead |
||
| Week 8: Oct 16 | None (Fall Break) No class on Monday, Oct 16 | Implementing Iterators: Friendship, Inner Classes, Operator Overloading |
| Week 9: Oct 23 | BSTs | 2–3–4 and Red–Black Trees |
| Week 10: Oct 30 | Amortized Analysis, Splay Trees | Randomized Trees, Randomized Insert |
| Week 11: Nov 6 |
Second Proficiency Tries for
Groups 4, 5, and 6
No class on Monday, Nov 6; office hours instead |
Templates, Conversion |
| Week 12: Nov 13 | Hash Tables (Separate Chaining) | Hash Tables (Open Addressing) |
| Week 13: Nov 20 |
Heaps
Goals 10A
|
None (Thanksgiving Break) No class on Wednesday, Nov 22 |
| Week 14: Nov 27 | Inheritance, Virtual Functions, Polymorphism
Goals 10B
|
Conversion (for Classes), Trade-Off Scenarios for Different Data Structures
Goals 10D
|
| Week 15: Dec 4 |
Second Tries for Groups 7 and 8
No class on Monday, Dec 4; office hours instead |
Review |
|
Finals Week Dec 11–15 |
No classes or homework; non-seniors: final try at proficiency checks for all topics. | |
Homework Schedule
All the homeworks and their dates are listed here:
Proficiency-Check Schedule
All the proficiency checks and their dates are listed here:
(When logged in, completion status appears here.)