This course deals with the study of algorithms for solving practical problems, and of the data structures used in their implementation. Detailed analysis of the resource requirements for the algorithms will be an important issue. The topics may include: mathematical tools, greedy algorithms, dynamic programming, divide-and-conquer, advanced data structures, basic search techniques, graph algorithms, etc.
12cp of 2000-level COMP courses including COMP2100 or both COMP2031 and COMP2033; and 6cp of 2000-MATH/STAT/EMET courses.
COMP3600 is a 6 credit points second semester course. The lecturer in charge is Dr Weifa Liang (CSIT room N334, phone 6125 3019).
The course consists of approximately thirty lectures and four
tutorials/labs (two hours for each tut-lab combination).
2:00pm -- 3:00pm on Mondays, SRES T
2:00pm -- 3:00pm on Tuesdays, SRES T
10:00am -- 11:00am on Wednesdays, FSTY T
There will be four combined tute-labs in weeks 5, 7, 9, and 11; regsitration is now open via Streams.
The textbook is:
Introduction to algorithms
The MIT Press, 2nd Edition, 2004 or later.
The following books are recommended for reference:
Computer Algorithms -- Introduction to Design and Analysis
by
Addison-Wesley, 3rd Edition, 2000.
Algorithms in C
Addison-Wesley, 3rd Edition, 2002.
The Design and Analysis of Computer Algorithms
Addison-Wesley, 1974.
Algorithms Design
Addison-Wesley, 2005.
There will be two assignments and a final exam. Following the departmental course assessment policy, the assessment will be based on a 40:60 weighting for the assignments (A/100) and the examination (E/100). It will be calculated using the following formula:
Total = 0.4A+0.6E
In addition, a mark of at least 40/100 in each of the two components is required for a pass in the course.
The department's policy on plagiarism will be enforced.