Assignments
This page is a master list of all assignments and due dates for the course. It will be updated as assignments are made available.
Assignments are due at 4:00pm (the start of class), unless otherwise noted. I will often make them due slightly later in Gradescope to account for upload delays, last-minute problems, and whatnot, but ultimately you are responsible for setting aside enough time to complete and upload each assignment on time.
Solutions, when available, are password-protected; the course username and password are on the Moodle site.
Note that the estimated time to complete each programming assignment is just that: an estimate. It assumes that you are fluent in Java through the 121 material, and have had no difficulty with in-class exercises and homework assignments. If these assumptions are not true, you will want to budget more time. Don’t take an estimated time of an hour to mean that it’s OK to start exactly an hour before an assignment is due! Start assignments early so the course staff will have time to clarify points of confusion for you, and to give you time to overcome unexpected difficulties.
- Due Sep 07 Thu: Homework 01: Variables and Scope [solution]
- Due Sep 08 Fri 9pm: Programming Assignment 01: Hamspam
- Quiz Sep 11 Mon: Quiz 1 will be in discussion; sample questions
- Due Sep 12 Tue: Homework 02: Control Flow [solution]
- Due Sep 14 Thu: Homework 03: Unit Tests [solution]
- Due Sep 15 Fri 9pm: Programming Assignment 02: Bus Simulator
- Due Sep 19 Tue: Homework 04: Classes, Objects, Methods [solution]
- Due Sep 21 Thu: Homework 05: Namespaces, Packages, and the CLASSPATH [solution]
- Due Sep 22 Fri 9pm: Programming Assignment 03: Working with Strings and Lists
- Quiz Sep 25 Mon: Quiz 2 will be in discussion; sample questions
- Due Sep 26 Tue: Homework 06: Arrays and Lists [solution]
- Due Sep 28 Thu: Homework 07: Linked Lists [solution]
- Due Sep 29 Fri 9pm: Programming Assignment 04: DNA Sequence Assembly
- Due Oct 03 Tue: Homework 08: Working with Lists [solution]
- Due Oct 05 Thu: Homework 09: Writing Comparators [solution]
- Due Oct 06 Fri 9pm: Programming Assignment 05: Scheduler
- Quiz 10 Oct Tue: Quiz 3 will be in discussion on this UMass Monday; sample questions
- Due Oct 12 Thu: Homework 10: Math Sets, Java Sets [solution]
- Due Oct 13 Fri 9pm: Programming Assignment 06: Similarity Detector
- Due Oct 17 Tue: Homework 11: Hashcodes [solution]
- Due Oct 19 Thu: Homework 12: More help for Santa [solution]
- Due Oct 20 Fri 9pm: Programming Assignment 07: Needle in a Haystack
- Quiz Oct 23 Mon: Quiz 4 will be in discussion; sample questions
- Due Oct 24 Tue: Homework 13: Map Finger Exercises [solution]
- Due Oct 26 Thu: Homework 14: Running Time [solution]
- Due Oct 27 Fri 9pm: Programming Assignment 08: Image Mosaic
- Due Nov 02 Thu: Homework 15: Static Method Finger Exercises [solution]
- Due Nov 03 Fri 9pm: Programming Assignment 09: Information Retrieval
- Quiz Nov 06 Mon: Quiz 5 will be in discussion; sample questions
- Due Nov 07 Tue: Homework 16: Sorting [solution]
- Due Nov 09 Thu: Homework 17: Graph Search [solution]
- Due Nov 10 Fri 9pm: Programming Assignment 10: Search
- Due Nov 14 Tue: Homework 18: Graphs [solution]
- Due Nov 16 Thu: Homework 19: Growable Stack [solution]
- Due Nov 17 Fri 9pm: Programming Assignment 11: Crawler
- Quiz Nov 27 Mon: Quiz 6 will be in discussion; sample questions
- Due Nov 28 Tue: Homework 20: Reversing a Queue [solution]
- Due Nov 30 Thu: Homework 21: Recursion [solution]
- Due Dec 01 Fri 9pm: Programming Assignment 12: War
- Due Dec 05 Tue: Homework 22: More Recursion [solution]
- Due Dec 07 Thu: Homework 23: OEI Survey
- Due Dec 08 Fri 9pm: Programming Assignment 13: Hangman
- Quiz Dec 11 Mon: Quiz 7 will be in discussion; sample questions
- Final Exam Dec 19 Tue 3:30pm–5:30pm in ILC S331 (our classroom)