EECS 280: Programming and Intro Data Structures

The University of Michigan
Course Archive
Looking for current term?

Spring 2022
139

Staff

Julia Aoun head shot Q Cong head shot Maria Fields head shot  Zachary Goldston head shot Gurish Sharma head shot Kami Ziolkowski head shot
Day Lecture Topic Lab Topic Deadline
Week 1Mon May 2
Tue May 3 1. Introduction and Machine Model Getting Started
Wed May 4 2. Procedural Abstraction, Testing and Debugging
Thu May 5 3. Pointers Machine Model, Testing, IDE Setup
Fri May 6
Week 2Mon May 9 4. Pointers and Arrays
Tue May 10 5. Strings, Streams, and IO Pointers and Arrays Project 1
Due Tue May 10 at 8pm
Wed May 11 6. Compound Objects
Thu May 12 7. Abstract Data Types in C Strings and IO
Fri May 13
Week 3Mon May 16 8. Abstract Data Types in C++ Add/Drop Deadline, Mon May 16
Tue May 17 9. Derived Classes and Inheritance Abstract Data Types Project 2
Due Tue May 17 at 8pm
Wed May 18 Euchre Social (optional) Entry Survey
Due Wed May 18 at 8pm
Thu May 19 10. Polymorphism Polymorphism
Fri May 20
Week 4Mon May 23 11. Container ADTs I
Tue May 24 12. Container ADTs II Extra OH
Wed May 25 13. Memory Models and Dynamic Memory
Thu May 26 14. Managing Dynamic Memory Container ADTs
Fri May 27 Project 3
Due Fri May 27 at 8pm
Week 5Mon May 30 No Class - Memorial Day
Tue May 31 15. Deep Copies and The Big Three No Lab
Wed Jun 1 No Class - Midterm Exam Midterm Exam
Wed Jun 1 at 7-9pm
Thu Jun 2 16. Linked Lists Dynamic Memory & Deep Copies
Fri Jun 3
Week 6Mon Jun 6 17. Iterators
Tue Jun 7 18. Recursion and Tail Recursion Extra OH
Wed Jun 8 19. Structural Recursion
Thu Jun 9 20. Function Objects and Impostor Syndrome Recursion Project 4
Due Thur Jun 9 at 8pm
Fri Jun 10
Week 7Mon Jun 13 21. Auto, Maps, Range-Based For Loops
Tue Jun 14 22. Exceptions Iterators and Functors
Wed Jun 15 23. Containers of Pointers and What's Next
Thu Jun 16 No Lecture Final Exam Review
Fri Jun 17
Week 8Mon Jun 20 Special Topics (Optional!) Project 5
Due Mon Jun 20 at 8pm
Tue Jun 21
Wed Jun 22
Thu Jun 23 Final Exam
Thu Jun 23 at 4-6pm
Fri Jun 24 Alternate Final Exam
Fri Jun 24 at 8-10am

Winter 2022
1345

Staff

Ibrahim Abouarabi head shot Fizza Ahmed head shot Zaynab Alsaedy head shot Julia Aoun head shot Clarissa May Babila head shot Zach Carey head shot Q Cong head shot Alex Daines head shot Alex ElHamahmy head shot Maria Fields head shot Abigail Fox head shot  Zachary Goldston head shot Unser Hashsham head shot Jessica Houghton head shot Chimmuanya Iheanyi-Igwe head shot Sam Jaehnig head shot Arif Jamaluddin head shot Rushil Kasetty head shot Brandon Kayes head shot Nishu Kothari head shot Ashvin Kumar head shot Neha Kumar head shot Daniel Liu head shot Justin Liu head shot Michelle Liu head shot Leheng Lu head shot Lizzy Lu head shot Joe Macek head shot Mariam Mahmoud head shot Iman Malik head shot Kaily Metzhead shot Rajeev Nag head shot Vishal Nayak head shot Hannah Niswander head shot Ashish Patel head shot Shweta Pati head shot Michael Peng head shot Wenzhao Qiu head shot Divya Ramamoorthy head shot Akshaya Ravikumar head shot Anwesha Sarangi head shot Natasha Saputra head shot Sebastian Schab head shot Gabriel Severance head shot Omid Shahidi head shot Gurish Sharma head shot Stella Shi head shot Joshua Siegel head shot Will Soltas head shot Ann Stone head shot Claire Sun head shot Pulak Taneja head shot James Weng head shot Qinjuan Xie head shot Bright Xu head shot Chris Zhang head shot Kami Ziolkowski head shot
Day Lecture Topic Lab Topic Deadline
Week 1Mon Jan 3 No Lab
Tue Jan 4
Wed Jan 5 1. Introduction and Machine Model
Thu Jan 6
Fri Jan 7
Week 2Mon Jan 10 2. Procedural Abstraction, Testing and Debugging
Lab due Sun 8pm
1. Getting Started
Solution
Tue Jan 11
Wed Jan 12 3. Pointers
Thu Jan 13
Fri Jan 14
Week 3Mon Jan 17 No Lecture - MLK Day No Lab
Tue Jan 18
Wed Jan 19 4. Pointers and Arrays Project 1
Due Wed Jan 19 at 8pm
Computing CARES: Resume & Interview Workshop
Wed, Jan 19 6-7:30pm REMOTE
Thu Jan 20
Fri Jan 21
Week 4Mon Jan 24 5. Const, Compound Objects
Lab due Sun 8pm
2. Pointers and Arrays
Solution
P2 Overview Session
Mon, Jan 24 7pm REMOTE Slides Recording
Tue Jan 25 Add/Drop Deadline, Tue Jan 25
Wed Jan 26 6. Strings, Streams, and IO Entry Survey
Due Wed Jan 26 at 8pm
Thu Jan 27
Fri Jan 28
Week 5Mon Jan 31 7. Abstract Data Types in C
Lab due Sun 8pm
3. Strings and IO
Structs and C-Style ADTs
Solution
Tue Feb 1
Wed Feb 2 8. Abstract Data Types in C++
Thu Feb 3
Fri Feb 4 Project 2
Due Fri Feb 4 at 8pm
Week 6Mon Feb 7 9. Derived Classes and Inheritance
Lab due Sun 8pm
4. Classes
C++ Style ADTs
Solution
Tue Feb 8 P3 Overview Session
Tue, Feb 8th 7-8pm REMOTE Slides Recording
Wed Feb 9 10. Polymorphism
Thu Feb 10
Fri Feb 11
Sat Feb 12 Euchre Social
Sat, Feb 12 from 12-1:30pm
Mason Hall 1427-1469 Slides
Week 7Mon Feb 14 11. Container ADTs I
Lab due Sun 8pm
5. Polymorphism
Solution
Tue Feb 15
Wed Feb 16 12. Container ADTs II Computing CARES: Study Tips and Social with GEECS
Wed, Feb 16 6-8pm in BBB 1690
Thu Feb 17 Midterm Review Session
Thu, Feb 17 8-10pm
Recording WKST
Fri Feb 18 Project 3 Checkpoint
Due Fri Feb 18 at 8pm
Week 8Mon Feb 21 13. Memory Models and Dynamic Memory No Lab
Tue Feb 22
Wed Feb 23 No Lecture - Midterm Exam Midterm Exam
Wed Feb 23rd at 7-9pm
Thu Feb 24 Alternate Midterm Exam
Thu Feb 24 at 7-9pm
Fri Feb 25
Week 9Mon Feb 28 Spring Break
Tue Mar 1
Wed Mar 2
Thu Mar 3
Fri Mar 4
Week 10Mon Mar 7 14. Managing Dynamic Memory
Lab due Sun 8pm
6. Container ADTs
Solution
Tue Mar 8
Wed Mar 9 15. Deep Copies and The Big Three Computing CARES: How To Be An EECS IA
Wed, Mar 9 6-8pm in BBB 1670
Thu Mar 10
Fri Mar 11
Week 11Mon Mar 14 16. Linked Lists
Lab due Sun 8pm
7. Dynamic Memory and Deep Copies
Solution
Project 3
Due Mon Mar 14 at 8pm
Tue Mar 15 CSE Undergraduate Town Hall
Tue, Mar 15 6:30-8pm Remote
Wed Mar 16 17. Iterators P4 Overview Session
Wed, Mar 16 7pm REMOTE Recording Slides
Thu Mar 17
Fri Mar 18
Week 12Mon Mar 21 18. Recursion and Tail Recursion No Lab
Tue Mar 22
Wed Mar 23 19. Structural Recursion
Thu Mar 24
Fri Mar 25 Project 4
Due Fri Mar 25 at 8pm
Week 13Mon Mar 28 20. Function Objects and Impostor Syndrome
Lab due Sun 8pm
8. Recursion
Solution
Tue Mar 29
Wed Mar 30 21. Auto, Maps, Range-Based For Loops Computing CARES: Different Avenues in Tech
Wed, Mar 30 6-8pm
REMOTE
Thu Mar 31
Fri Apr 1
Week 14Mon Apr 4 22. Exceptions
Lab due Sun 8pm
9. Iterators and Functors
Solution
Tue Apr 5
Wed Apr 6 Catch-up Lecture - as needed
Thu Apr 7
Fri Apr 8 Project 5 Checkpoint
Due Fri Apr 8 at 8pm
Week 15Mon Apr 11 23. Containers of Pointers and What's Next
Lab due Sun 8pm
10. Final Exam Review and Reflection
Solution
Tue Apr 12
Wed Apr 13 Office Hours in Lecture Halls
Thu Apr 14
Fri Apr 15
Week 16Mon Apr 18 No Lecture No Lab
Tue Apr 19 Project 5
Due Tue Apr 19 at 8pm
Final Exam Review Session
Tue, Apr 19 8-10pm REMOTE
WKST Slides
Recording
Wed Apr 20
Thu Apr 21 Exit Survey Part 1 Part 2
Due Thu Apr 21 at 8pm
Fri Apr 22 Final Exam
Fri Apr 22 at 10:30am-12:30pm
Alternate Final Exam
Fri Apr 22 at 1:30pm-3:30pm

Fall 2021
1074

Staff

Ibrahim Abouarabi head shot Fizza Ahmed head shot Zaynab Alsaedy head shot Julia Aoun head shot Natalie Brotherton head shot Zach Carey head shot Alex ElHamahmy head shot Abigail Fox head shot Unser Hashsham head shot Ella Hathaway head shot Jessica Houghton head shot Chimmuanya Iheanyi-Igwe head shot George Jacob head shot Sam Jaehnig head shot Arif Jamaluddin head shot Rushil Kasetty head shot Michael Kaufmann head shot Nishu Kothari head shot Ashvin Kumar head shot Lizzy Lu head shot Joe Macek head shot Mariam Mahmoud head shot Kaily Metzhead shot Alec Minchington head shot Rajeev Nag head shot Jonah Nan head shot Vishal Nayak head shot Hannah Niswander head shot Ashish Patel head shot Wenzhao Qiu head shot Akshaya Ravikumar head shot Natasha Saputra head shot Sebastian Schab head shot Jasper Scheiber head shot Gabriel Severance head shot Gurish Sharma head shot Tejas Shete head shot Stella Shi head shot Joshua Siegel head shot Will Soltas head shot Ann Stone head shot Pulak Taneja head shot Jennifer Tran head shot Connor Turco head shot Bridget Wang head shot Bright Xu head shot Emily Zamora head shot Kami Ziolkowski head shot
Day Day Lecture Topic Lab Topic Deadline
Week 1Mon Aug 30 Tue Aug 31 Introduction and Machine Model No Lab
Wed Sep 1 Thu Sep 2 Procedural Abstraction, Testing and Debugging
Fri Sep 3
Week 2Mon Sep 6 Tue Sep 7 No Lecture Labor Day
Wed Sep 8 Thu Sep 9 Pointers Intro to Lab, Memory Model
Fri Sep 10
Week 3Mon Sep 13 Tue Sep 14 Pointers and Arrays Debugging Session
Wed Sep 15 Thu Sep 16 Strings, Streams, and IO Pointers and Arrays
Fri Sep 17 Proj 1 Due Fri Sep 17 at 8pm
Week 4Mon Sep 20 Tue Sep 21 Compound Objects Mon Sep 20 Add/Drop Deadline
Wed Sep 22 Thu Sep 23 Abstract Data Types in C Strings and IO Entry Survey Due Wed Sep 22 at 8pm
Fri Sep 24
Week 5Mon Sep 27 Tue Sep 28 Abstract Data Types in C++
Wed Sep 29 Thu Sep 30 Derived Classes and Inheritance Abstract Data Types
Fri Oct 1 Proj 2 Due Fri Oct 1 at 8pm
Walkthrough
Week 6Mon Oct 4 Tue Oct 5 Polymorphism Computing CARES:
How to become an EECS IA Panel
Recording
Wed Oct 6 Thu Oct 7 Container ADTs I Polymorphism "Git Smart" with Profs. Juett and Beaumont
Recording
Fri Oct 8 Project 3 Euchre Social
Week 7Mon Oct 11 Tue Oct 12 Container ADTs II P3 Walkthrough
Wed Oct 13 Thu Oct 14 Memory Models and Dynamic Memory No Lab
Fri Oct 15
Week 8Mon Oct 18 Tue Oct 19 No Lecture Fall Break
Wed Oct 20 Thu Oct 21 Managing Dynamic Memory Container ADTs
Fri Oct 22 Proj 3 Due Fri Oct 22 at 8pm
Week 9Mon Oct 25 Tue Oct 26 Linked Lists Midterm Review Session
Wed Oct 27 Thu Oct 28 No Lecture No Lab Midterm Exam Wed Oct 27 at 7pm-9pm
Alternate Exam Thu Oct 28 at 7pm-9pm
Fri Oct 29
Week 10Mon Nov 1 Tue Nov 2 Deep Copies and The Big Three
Wed Nov 3 Thu Nov 4 Iterators Dynamic Memory and Deep Copies Computing CARES "Undergraduate Research" Panel
Piazza @ 2785
Fri Nov 5
Week 11Mon Nov 8 Tue Nov 9 Function Objects and Impostor Syndrome
Wed Nov 10 Thu Nov 11 Recursion and Tail Recursion Iterators and Functors
Fri Nov 12 Proj 4 Due Fri Nov 12 at 8pm
Week 12Mon Nov 15 Tue Nov 16 Structural Recursion Computing CARES "Internship" Panel
Piazza @3208 RSVP
Wed Nov 17 Thu Nov 18 Problem Solving with Recursion Recursion Project 5 Overview Session
Fri Nov 19
Week 13Mon Nov 22 Tue Nov 23 No Lecture
Wed Nov 24 Thu Nov 25 No Lecture No Lab Thanksgiving Break
Fri Nov 26
Week 14Mon Nov 29 Tue Nov 30 Exceptions
Wed Dec 1 Thu Dec 2 Juett, Beaumont, Saleem: No Lecture
Molaei: TBD
Final Exam Review and Reflection
Fri Dec 3
Week 15Mon Dec 6 Tue Dec 7 Containers of Pointers and What's Next
Wed Dec 8 Thu Dec 9 No Lecture Final Exam Review Session
Fri Dec 10 Proj 5 Due Fri Dec 10 at 8pm
Mon Dec 13 Exit Survey Due Mon Dec 13 at 8pm Computing CARES Exit Survery
Tue Dec 14 Final Exam Tues Dec 14 at 10:30am-12:30pm
Alternate Exam Tues Dec 14 at 1:30pm-3:30pm

Spring 2021
146

Staff

Claire Burton head shot Ashley Carroll head shot Alex ElHamahmy head shot Sam Jaehnig head shot Lizzy Lu head shot Natasha Saputra head shot Jennifer Tran head shot Kami Ziolkowski head shot
Day # Lecture Lab Events/Deadlines
Tue May 4 1 Introduction and Machine Model No lab
Wed May 5 2 Procedural Abstraction, Testing, and Debugging
Thu May 6 3 Pointers Getting Started
Fri May 7
Mon May 10 4 Arrays and Pointers
Tue May 11 5 Strings, Streams, and IO Pointers and Arrays P1 due Tue May 11
Wed May 12 6 Compound Objects IDE Tips/Tricks Project 2 Overview
Thu May 13 7 Abstract Data Types in C Strings and IO
Fri May 14
Mon May 17 8 Abstract Data Types in C++ Add/drop deadline
Tue May 18 9 Derived Classes and Inheritance Abstract Data Types Project 2 due Tue May 18
Wed May 19 10 Polymorphism Euchre Social Project 3 Overview
Thu May 20 11 Container ADTs I Polymorphism
Fri May 21
Mon May 24 Program Design Demo Recording Part 2 Code Files
Tue May 25 12 Container ADTs II euchre.cpp and Midterm Review
Wed May 26 13 Memory Models and Dynamic Memory
Thu May 27 14 Managing Dynamic Memory Container ADTs
Fri May 28 Project 3 due Fri May 28
Mon May 31 No Class - Memorial Day
Tue Jun 1 15 Linked Lists No Lab
Wed Jun 2 No Class - Midterm Exam Midterm 7pm
Wed Jun 2
Review Session
Thu Jun 3 16 Deep Copies Linked Structures
Fri Jun 4
Mon Jun 7 17 Iterators Project 4 Overview Review Session
Tue Jun 8 18 Recursion and Tail Recursion Dynamic Memory & Deep Copies
Wed Jun 9 19 Structural Recursion Project 4 due Wed Jun 9
Thu Jun 10 20 Functors and Impostor Syndrome Recursion
Fri Jun 11
Mon Jun 14 No Lecture
Tue Jun 15 21 Maps, auto, and Range-Based Loops Iterators and Functors Project 5 Overview Videos
Wed Jun 16 22 Error Handling and Exceptions
Thu Jun 17 23 Containers of Pointers and What's Next? Final Exam Review and Reflection
Fri Jun 18
Mon Jun 21 No Lecture Project 5 due Mon Jun 21
Tue Jun 22
Wed Jun 23
Thu Jun 24 Final 8am
Thu Jun 24 Review Session

Winter 2021
1204

Staff

Rithik Aggarwal head shot Zaynab Alsaedy head shot Sameer Barretto head shot Cavun Beck head shot Isha Bhatt head shot Natalie Brotherton head shot Simrun Buttar head shot Zach Carey head shot Ashley Carroll head shot Rachel Connolly head shot Abigail Fox head shot Hafiz Hasan head shot Ella Hathaway head shot Alexis Honzik head shot Ryien Hosseini head shot Jessica Houghton head shot George Jacob head shot Sam Jaehnig head shot Arif Jamaluddin head shot Neil Johari head shot Jon Juett head shot Alec Korotney head shot Nishu Kothari head shot Ashvin Kumar head shot Katie Lee head shot Michelle Liu head shot Joe Macek head shot Mariam Mahmoud head shot Jared Miller head shot Ram Natla head shot Vishal Nayak head shot Zach Papanastasopoulous head shot Makarand Parigi head shot Noah Pinter head shot Nathan Podolsky head shot Andrew Pospeshil head shot Raeed Rasul head shot Anish Ravipati head shot Natasha Saputra head shot Kaylina Savela head shot Jasper Scheiber head shot Spencer Semple head shot Vanita Sharma head shot Tejas Shete head shot Will Soltas head shot Pulak Taneja head shot Jennifer Tran head shot Connor Turco head shot Bridget Wang head shot Alice Ying head shot Kami Ziolkowski head shot
Day # Lecture Lab Deadline
Wed 20 Jan 1 Introduction and Machine Model No lab
Mon 25 Jan 2 Procedural Abstraction, Testing, and Debugging
Introduction to Lab Pods, Memory Model
Wed 27 Jan 3 Pointers
Mon 1 Feb 4 Arrays
Arrays and Pointers
Project 1: 8pm
Thu 4 Feb
Spec
Wed 3 Feb 5 Strings, Streams, and IO
Mon 8 Feb 6 Compound Objects
Strings and I/O
Wed 10 Feb 7 Abstract Data Types in C
Mon 15 Feb 8 Abstract Data Types in C++
ADTs
Project 2: 8pm
Wed 17 Feb
Spec
Wed 17 Feb 9 Derived Classes and Inheritance
Mon 22 Feb 10 Polymorphism No lab (well-being day)
Wed 24 Feb No class (well-being day)
Mon 1 Mar 11 Container ADTs and Generic Programming
Polymorphism
Wed 3 Mar 12 Container ADT Interfaces and Invariants
Mon 8 Mar 13 Memory Models and Dynamic Memory
Container ADTs
Project 3: 8pm
Tue 9 Mar
Spec
Wed 10 Mar 14 Managing Dynamic Memory
Mon 15 Mar No class No lab
Midterm: 7pm
Tue 16 Mar

Alternate: 8am
Wed 17 Mar
Wed 17 Mar No class
Mon 22 Mar 15 Deep Copies and The Big Three Dynamic memory Canceled
Wed 24 Mar No class (well-being day)
Mon 29 Mar 16 Linked Lists
Dynamic Memory & The Big Three
Wed 31 Mar 17 Iterators
Mon 5 Apr 18 Recursion
Recursion
Project 4: 8pm
Tue 6 Apr
Spec
Wed 7 Apr 19 Structural Recursion
Mon 12 Apr 20 Binary Search Trees and Maps (P5 Examples)
P5, Maps, and Reflection
Wed 14 Apr 21 Function Objects and Imposter Syndrome
Mon 19 Apr 22 Exceptions (optional) No lab
Project 5: 8pm
Tue 20 Apr
Spec
Wed 21 Apr No class (study day)
Mon 26 Apr Final Exam
Final: 7pm
Mon 26 Apr
Tue 27 Apr Alternate Final Exam (details)
Alternate: 8am
Tue 27 Apr