COS 226 Programming Assignment #3
Program Report
Your program report should answer the following questions. This should
be submitted electronically using whiteboard along with the rest of your program
in a file called either report.txt (if in plain ascii text) or report.pdf
(if in pdf). Please do not submit any other formats.
- Describe your Disk data type.
- Describe the data type that you used to support the worst-fit heuristic.
If you extended a standard data type (e.g., priority queue), explain
carefully any modifications that you made.
- Generate some input files with random file sizes between 0 and 200000,
and between 100000 and 700000 using Generator.java. Create two tables (one
for each class of inputs) as follows: for each value of N = 100, 1000,
10000, 100000, 1000000, enter the total of the file sizes (in GB), the
number of disks used by worst-fit and worst-fit decreasing (even better if
you report the average over several random trials for each value of N).
Also enter the running time in seconds for worst-fit.
Optionally, you can add the "First Fit" and "First Fit decreasing"
heuristics to the table.
- Discuss the relative effectiveness of the heuristics. The number
of disks is the most important factor, but you should also comment on the
running time. Be critical and objective.
- Testing: on which input files did you test your programs?
- Any known bugs / limitations? Include any input files that you
tested that produced different results from our reference solutions.
Make sure you explain any memory limitation.
- List whatever help (if any) that you received.
- Describe any serious problems you encountered.
- Any other comments or feedback?