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: Jan 15 | Introduction, Single Variables, and Memory Models |
Object Lifetime for Primitives, Numeric Types, Promotion/Conversion, signed/unsigned (size_t )
|
Week 2: Jan 22 |
Compilation, Version Control, Pair Programming
Goals 3A
|
Arrays of Primitives, Style, Testing |
Week 3: Jan 29 | Separate Compilation |
References
Goals 4A
|
Week 4: Feb 5 | Classes in C++: Data Members, Include Guards, Member Initializers, Scope Operator | Object Lifetime (Part 1, On the Stack) |
Week 5: Feb 12 | Pointers (Part 1) | Pointers (Part 2) |
Week 6: Feb 19 |
Second Proficiency Tries for Groups 1,
2, and 3
No class on Monday office hours instead |
Object Lifetime (Part 2, On the Heap) |
Week 7: Feb 26 | 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 | ||
Week 8: March 4 | Implementing Iterators: Friendship, Inner Classes, Operator Overloading | |
SPRINGBREAK | ||
Week 9: March 18 | BSTs | 2–3–4 and Red–Black Trees |
Week 10: March 25 | Amortized Analysis, Splay Trees | Randomized Trees, Randomized Insert |
Week 11: April 1 |
Second Proficiency Tries for
Groups 4, 5, and 6
No class on Monday office hours instead |
Templates, Conversion |
Week 12: April 8 | Hash Tables (Separate Chaining) | Hash Tables (Open Addressing) |
Week 13: April 15 |
Heaps
Goals 10A
|
|
Week 14: April 22 | Inheritance, Virtual Functions, Polymorphism
Goals 10B
|
Conversion (for Classes), Trade-Off Scenarios for Different Data Structures
Goals 10D
|
Week 15: April 29 | Second Tries for Groups 7 and 8 | Review |
Finals Week |
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 tentative dates are listed here:
(When logged in, completion status appears here.)