The Projects:

Project Assigned Due
Project 0: Compiling & Debugging on GL Mon, Jan 29 Tue, Feb 13
Project 1: Square Lists with Circular Buffers Fri, Feb 9 Mon, Feb 26 (orig. Fri, Feb 23)
Project 2: Square Lists, Round 2 Tue, Feb 27 Mon, Mar 12
Project 3: Compact QuadTrees Wed, Mar 28 Tue, Apr 10
Project 4: Fake Min_Max Heaps Tues, Apr 10 Tue, May 1
Project 5: Hash Table Strategies and Performance Wed, May 2 Tue, May 15

Project Development

You are required to compile and run your projects on the GL servers (linux1, linux2 or linux3). However, you are free to use whatever development tools you want. Two options are the Eclipse Integrated Development Environment (IDE) and Microsoft Visual Studio C++. Eclipse is available on the PCs located in the OIT labs. If you prefer to work on your own PC, the ‘Eclipse IDE for C++ Developers” may be downloaded free of charge from

Program Compilation

You will be required to demonstrate that your code compiles and runs on GL using the specific Unix command string given for each project. Failure to do so means your project will not run with the grading scripts and will incur severe penalties.

Standards and Style

All projects should adhere to the C++ coding standards found in the course coding standards document unless otherwise directed. Projects will be evaluated on these guidelines. Projects that cannot compile or are unreadable because they deviate from the course coding standards will have points deducted.

Project Submission and Policies

Projects will be submitted for grading using the shared directories on GL:

Do familiarize yourself with these course policies:

Project Re-grades and follow-ups

If you believe there is an error in the grading of your project, you can see the TAs in person during their office hours. I.e., do not ask about regrades by email. This makes the overall regrade process much better. You must make your regrade request (in person) within a week of the receipt of your project grade.

Project Due date/time

A script automatically closes the submission directoy at 8:59:59 PM. This is not done by a human!! Please be diligent.