COS 226 Programming Assignment Checklist: Percolation and Union-Find

Frequently Asked Questions

Is there anything I should do before getting started? Please reread the Assignments Page, including the collaboration policy, lateness policy, and submission system instructions. The programming assignments will require a good deal of time. The final source code may not be that long, but creating and debugging the code is a serious time commitment. It is a mistake to wait until after Tuesday precept to start your assignments. You may be able to ask more meaningful questions in precept if you already have worked on the program enough to know what the real difficult issues are.

Where can I learn to use the Std*.java libraries? They are described in Section 1.5 and Section 2.1 on the Introduction to Programming booksite. There is also a search tool on both booksites that you can use to find more information about the code there.

Can I just use standard Java libraries directly? No.

How should I format and comment my code? Here are some style guidelines that your grader will appreciate.

More later. This is a new assignment.

Testing and Submitting

Submission.   After you have submitted all of the required files (Percolation.java, PercolationX.java, QuickUW.java, QuickUWPC.java, and readme.txt) the "Run Script" button on the submission system will appear. Be sure to hit the button and check that you submitted the right files and they compile cleanly.

Our script uses Checkstyle and FindBugs to analyze your code. The appearance of warning messages does not necessarily indicate an error or lead to a deduction.

Readme.   Use the following readme file template and answer all questions.

Possible Progress Steps

These are purely suggestions for how you might make progress. You do not have to follow these steps.

  1. Getting started. Download the directory percolation to your system. It contains the files Percolation.java, QuickU.java, Stopwatch.java, and readme.txt that you need to get started.

  2. Union-find. Read Chapter 1 of Algorithms in Java and review the slides for lecture 1 for more information on union-find algorithms. Completing this assignment successfully requires a general idea of how these algorithms work, but not a detailed understanding of the analytic results. (Why? If you think about this question, you will be off and running.)

  3. Statistics. Review a few basic facts about mean and standard deviation from any convenient source (Wikipedia is fine).



Last modified: February 15, 2007