EECS 280: Programming and Intro Data Structures

The University of Michigan
Spring 2024
Looking for Winter 2024 or Fall 2024?

Computer science fundamentals, with programming in C++. Build an image processing program, a game of Euchre, a text editor, and a machine learning algorithm. Syllabus

Live, In-Person  
Saquib Razak
MT 12pm-1:30pm
1670 BBB (North)
James Juett
WTh 12pm-1:30pm
1670 BBB (North)
Lecs 100 and 200 meet together.
Supplemental Materials
Project 5: Piazza Classifier
Due Mon, Jun 24 at 8pm
Lab 11: Maps, Final Exam Review

Due Wed, Jun 19 at 8pm
Exit Survey
Due Tue, Jun 25 at 8pm
Get Help & Connect
Office Hours

See schedule in calendar below.

Virtual OH queue:  Join

In-Person OH held in BBB Atrium.

Looking for old links? Check the Schedule below.

Calendar   Open in Google Calendar Add to My Calendar

Schedule   Printable Version

Day Lecture Topic Lab Topic Deadline/Event
Week 1Mon May 6
Tue May 7 Introduction and Machine Model No Lab
Wed May 8 Procedural Abstraction, Testing and Debugging Setup Walkthrough Sessions
Windows Mac
Thu May 9 Pointers 1. Getting Started, IDE Setup
Fri May 10
Week 2Mon May 13 Arrays
Tue May 14 const, Structs, and C-Style ADTs 2. Machine Model, Testing, Unit Testing Framework Project 1
Due Tue May 14 at 8pm
Wed May 15 Streams and I/O
Thu May 16 C-Style Strings 3. Pointers and Arrays, Detecting Undefined Behavior
Fri May 17
Week 3Mon May 20 Abstract Data Types in C++ Add/Drop Deadline
Mon May 20
Tue May 21 Derived Classes and Inheritance 4. Strings and IO, Version Control with git Entry Survey
Due Tue May 21 at 8pm
Wed May 22 Polymorphism Project 2
Due Wed May 22 at 8pm
Due Thu May 23 at 8pm
Thu May 23 Container ADTs I 5. Abstract Data Types, Mini-Project
Fri May 24
Week 4Mon May 27 No Class - Memorial Day
Tue May 28 Container ADTs II 6. Inheritance, Polymorphism, Debuggers
Wed May 29 Memory Models and Dynamic Memory
Thu May 30 Managing Dynamic Memory 7. Containers, Array-Based Data Structures
Fri May 31
Week 5Mon Jun 3 Deep Copies and The Big Three Project 3
Due Mon Jun 3 at 8pm
Tue Jun 4 Linked Lists No Lab
Wed Jun 5 No Lecture - Midterm Exam Midterm Exam
Wed Jun 5 at 12-2pm
Thu Jun 6 Iterators 8. Dynamic Memory, Deep Copies
Fri Jun 7
Week 6Mon Jun 10 Functors and Impostor Syndrome
Tue Jun 11 Recursion and Tail Recursion 9. Iterators and Functors
Wed Jun 12 Structural Recursion
Thu Jun 13 Binary Search Trees and Maps 10. Recursion
Fri Jun 14 Project 4
Due Fri Jun 14 at 8pm
Week 7Mon Jun 17 Exceptions
Tue Jun 18 Final Exam Review 11. Maps, Final Exam Review
Wed Jun 19 No Class - Juneteenth
Thu Jun 20 No Class No Lab
Fri Jun 21
Week 8Mon Jun 24 No Class Project 5
Due Mon Jun 24 at 8pm
Tue Jun 25 Exit Survey
Due Tue Jun 25 at 8pm
Wed Jun 26
Thu Jun 27 Final Exam
Thu Jun 27 8am-10am
Fri Jun 28



James Juett head shot
James Juett

Saquib Razak head shot
Saquib Razak

IAs and GSIs

Raiyan Ahmed head shot
Raiyan Ahmed
Maria Fields head shot
Maria Fields
Tea Hajratwala head shot
Téa Hajratwala
Jenna Jaehnig head shot
Jenna Jaehnig
Allison Okimoto head shot
Allison Okimoto
Alan Sun head shot
Alan Sun