Homework
In addition to your collaborative work on labs for this course, you will also need to complete individual homework assignments.
These assignments will build on the concepts you read about and practice during in-class labs.
Assignments may use concepts that have not been discussed by the time the homework is released, so you may need to revisit the later parts of some assignments closer to the deadline.
Please review the course syllabus for policies and grading information.
If you have questions about a policy you are welcome to ask about them individually or in class.
You may also find the templates useful.
-
Homework 0. Designing Algorithms
-
-
-
Assigned
September 1, 2026
-
-
Due
September 11, 2026
10:00pm
-
Homework 1. Asymptotic Analysis
-
-
-
Assigned
September 8, 2026
-
-
Due
September 18, 2026
10:00pm
-
Homework 2. Divide and Conquer
-
-
-
Assigned
September 15, 2026
-
-
Due
September 25, 2026
10:00pm
-
Homework 3. Greedy Algorithms
-
-
-
Assigned
September 22, 2026
-
-
Due
October 2, 2026
10:00pm
-
Homework 4. Sorting
-
-
-
Assigned
September 29, 2026
-
-
Due
October 9, 2026
10:00pm
-
Homework 5. Bias in Algorithms
-
-
-
Assigned
October 13, 2026
-
-
Due
October 30, 2026
10:00pm
-
Homework 6. Binary Search Trees
-
-
-
Assigned
October 27, 2026
-
-
Due
November 6, 2026
10:00pm
-
Homework 7. Graphs
-
-
-
Assigned
November 3, 2026
-
-
Due
November 13, 2026
10:00pm
-
Homework 8. Flow
-
-
-
Assigned
November 10, 2026
-
-
Due
November 20, 2026
10:00pm
-
Homework 9. Dynamic Programming
-
-
-
Assigned
November 17, 2026
-
-
Due
November 27, 2026
10:00pm
-
Homework 10. Assorted Topics
-
-
-
Assigned
November 24, 2026
-
-
Due
December 4, 2026
10:00pm