Place: CLH I

Time: Wednesday July 4, 16:30-17:45

Material:

If you use the first edition:

You are suggested to also study the pseudocode and proofs posted on the course webpage up to (and including) June 27.

If you use the second edition:

You are suggested to also study the pseudocode and proofs posted on the course webpage up to (and including) June 27.

You will be provided with a list of interfaces and their methods.

The test is a closed book test. No aids are permitted. Manage your time carefully. Tests written in pencil will not be considered for remarking.

You may either use pseudocode or Java code. Do not worry about specifying exceptions in any of your answers. When you write pseudocode, remember that it must be detailed enough. Roughly speaking, every pseudocode statement should be implementable in constant time, otherwise break it into additional statements. When you write Java code, you may call any of the methods of the interfaces in the list. If you wish to call any other method, then you must write it yourself.

If a student does not write the midterm, the weight of the final exam will be prorated accordingly. If a student writes the midterm, the mark will count. If a student wishes to receive the feedback from the missed midterm, arrangements will be made for the student to write the midterm at a later date, and the exam will be marked. The mark will not contribute to the student's final grade.