Assignments

All the released assignments are here! Please refer to the weekly calendar for anticipated due dates in the future.

Due dates on this page carry an implicit 11:59 PM deadline unless otherwise specified.

Please refer to the Handouts to facilitate working with these assignments.

Exercises

Exercise Due
EX01: Program Analysis Tue, Apr 9
EX02: Heaps Tue, Apr 16
EX03: Recurrence Relations Tue, Apr 16
EX04: AVL & B Trees Tue, Apr 23
EX05: VerifyAVL

This is a coding assignment; you should have a "verifyavl-yournetid" repo created for you on GitLab. If you can't find your repo, please contact course staff ASAP.

Tue, Apr 23
EX06: Hashing Tue, Apr 30
EX07: Sorting Tue, May 7
EX08: Dijkstra's Tue, May 14
Para:

These are coding assignments; you should have a "ex09-12-para-" repo created for you on GitLab. If you can't find your repo, please contact course staff ASAP. Your lowest score of the 4 problems this week will be dropped; you are therefore free to consider one of them as optional.

EX09: HasOver
EX10: GetLongestSequence
EX11: GetLeftMostIndex
EX12: FilterEmpty
Tue, May 21
EX13: Concurrency Tue, May 28

Projects

Project P1 Due
P1
Code
Spec
Checkpoint 0
Gradescope
Fri, Mar 29
Checkpoint 1
Gradescope
Thu, Apr 4
Final Submission
Code Submission
Thu, Apr 11
(OPTIONAL) Autograder fast feedback
You can get fast feedback using the P1 autograder, before the TAs have finished grading your project.
Code Submission
Thu, Apr 25
Project P2 Due
P2
Code
Spec
Checkpoint 1
Gradescope
Thu, Apr 18
Checkpoint 2
Gradescope
Thu, May 2
Final Submission
Code Submission
Thu, May 9
Project P3 Due
P3
Code
Spec
Checkpoint 1
Gradescope
Thu, May 16
Final Submission
Code Submission
Short-Answer Questions
Thu, May 30