This page contains the programming assignments for this course. The assignment specification describes the technical requirements of the programming assignment; the checklist answers FAQs and provides advice for testing and getting started. Below the list of assignments, you will find the course policies regarding submission, lateness, grading, and collaboration. The assignment FAQ also contains important information common to all programming assignments.
# | DUE | LOGO | ASSIGNMENT | COLLABORATION | LINKS |
---|---|---|---|---|---|
1 | Monday 9/9 |
Percolation Estimate the percolation threshold using union–find. |
individual |
Checklist Project Submit! |
|
2 | Monday 9/16 |
Queues Implement two collections using arrays and linked lists. |
individual |
Checklist Project Submit! |
|
3 | Monday 9/30 |
Autocomplete Find all terms beginning with a given prefix, sorted by weight. |
partner |
Checklist Project Submit! |
|
4 | Monday 10/28 |
K-d Trees Implement k-d trees with nearest neighbor search. |
partner |
Checklist Project Submit! Leaderboard |
|
5 | Monday 11/4 |
WordNet Measure the relatedness of two nouns using the WordNet digraph. |
partner |
Checklist Project Submit! Leaderboard |
|
6 | Monday 11/18 |
Seam Carving Implement a content-aware image resizing algorithm. |
partner |
Checklist Project Submit! Leaderboard |
|
7 | Monday 12/9 |
Fraud Detection Predict credit card fraud using algorithms for machine learning. |
partner |
Checklist Project Submit! |