Each week you should attend three hours of lectures, a two hour mixed class (a tutorial and a practical combined in a single session). For details of days, times and rooms consult the timetables webpage.
Please note that Workshops commence in Week 2 and that you are strongly advised to attend the Workshops and hand in prepared work each week. You will be working in pairs and handing in joint work. Details for how to select your team member will be given in the first week in lectures. Please note that the two in-class quizzes will be strongly based on the weekly exercises. You are therefore strongly advised to complete the set class exercises, and to seek clarification when you are unable to complete a question. The assignments will involve a presentation which will be marked in the relevant workshop; you will be required to attend those workshops to receive credit for the presentation part.
We recommend that during Week 1 you make sure that you can successfully login into your account, and also access unit's materials via iLearn .
REQUIRED AND RECOMMENDED TEXTS AND/OR MATERIALS
The following textbooks are recommend but not required for COMP333:
-  S. S. Skiena, The Algorithm Design Manual, Springer, 2nd edition, 2008, ISBN: 978-1-84800-069-8. Electronic version may be available from the library.
-  T. H. Cormen, C. E. Leiserson, R. L. Rivest, & C. Stein, Introduction to Algorithms (MIT Press) 3rd edition. ISBN 0-262-53305-7.
They should be available from the University Co-op Bookshop and/or library.
UNIT WEBPAGE AND TECHNOLOGY USED AND REQUIRED
Digital recordings of lectures are available. Please follow these instructions to access the recordings.
Object-oriented technology & languages: Java
Version control: git/mercurial
This unit will use iLearn to distribute materials and for submission of work.
The unit makes use of discussion boards hosted within iLearn. Please post questions there, they are monitored by the staff on the unit.
No late submissions.
Teaching and Learning Strategy
COMP333 is taught via lectures and mixed classes in the laboratory. Lectures are used to introduce new theoretic material, give examples of the use these techniques and put them in a wider context. Mixed classes give you the opportunity to interact with your peers. You will be given problems to solve each week; preparing solutions is important because it will allow you to discuss the problems effectively with your tutor thereby making the most of this activity. The aim of the mixed classes is to help you to develop problem-solving skills and teamwork, and you will be expected to work on problems in class. Mixed classes give you an opportunity to practice your programming skills, and to implement many of the ideas discussed in lectures. Each week you will be given a number of problems to work on; it is important that you keep up with these problems as doing so will help you understand the material in the unit and prepare you for the work in assignments and in class tests. Additional questions are provided for extension and general practice.
Lecture notes will be made available each week but these notes are intended as an outline of the lecture only and are not a substitute for your own notes or the textbook.