Continuation of object-centered design and implementation in C++. Building programs from modules. Data abstractions and classes to implement abstract data types. Static and dynamic memory allocation. Data structure implementation and algorithm efficiency. Lists, tables, stacks, and queues. Templates and generic programming.
It should be assumed that all assignments are due by 10:00 PM ET on their respective due dates. Due dates are subject to change, but if a change is made, an announcement will be posted to Piazza.
Links to lecture videos, projects, and other materials will be made available as relevant dates approach. Content that is written for future weeks may change without notice until the date arrives.
|Week||Lectures||Due on Monday||Due on Thursday|
|2022-05-16||Week 1||Homework 00|
|2022-05-23||Week 2||Homework 01||Homework 02|
|2022-05-30||Week 3||Homework 03||Homework 04|
|2022-06-06||Week 4||Homework 05||Mid-term Exam|
|2022-06-13||Week 5||Homework 06||Homework 07|
|2022-06-20||Week 6||Homework 08||Homework 09|
|2022-06-27||Week 7||Homework 10||Final Exam|
Help Room is conducted through Zoom. You can find the link to the meeting on Piazza.
Please be aware that you may not receive the attention you desire if you attend help room very near an assignment deadline. So please consider attending help room prior to the day an assignment is due as there will be less demand.
Please direct any and all written communication to Piazza (you can post anonymously if that's something you'd prefer). Emails may not be responded to.
If you would like a one-on-one meeting with an instructor, please make a private Piazza post detailing your request and availability.