FA C U L T Y Faculty
BOOKLET 2004 – 2005 of Science & Agriculture
COMP 2500 (CS24E) OBJECT-ORIENTED PROGRAMMING I (4 credits)
COMP 2700 (CS27E) DATABASE MANAGEMENT SYSTEMS I (4 credits)
Prerequisite: COMP 1100 and COMP 1200 (CS11E and CS11F)) Syllabus: Object-oriented software architectures. Object-oriented design. Classes and methods. Messages, instances, and initialisation. Inheritance and class hierarchies.Polymorphism. Composition. Visibility and dependency. Fundamental design patterns.
(Prerequisite: COMP 1100 and COMP 1200 (CS11E and CS11F) Syllabus: Relational data modelSQL/Procedural SQLDatabase design. ER Modeling. Normalization.Query processing and OptimizationTransaction management. Concurrency.
Recovery.Databases and the Internet.
One 2-hour written paper
Examination One 2-hour written paper Coursework
COMP 2600 (CS25E) THEORY OF COMPUTING I (4 credits)
COMP 3000 (CS30E) DESIGN AND ANALYSIS OF ALGORITHMS (4 credits)
Prerequisites: MATH 1140 and MATH 1150 (M12A and M12B) Syllabus: Alphabet and languages.Finite automata and regular languages. State minimisation. Deterministic and non-deterministic fi- nite automata. Algorithmic aspects of finite automata.Context- free languages and pushdown automata. Context-free gram-
mars. Determinism and parsing. Examination: One 2 - hour written paper Coursework
Prerequisite: COMP 2000 ( CS20A) Syllabus: Review and analysis of data structures: stacks, queues, linked lists, hash tables, binary search trees, red-black trees, graphs, spanning trees. Analyse algorithms for time and space bounds. Growth of functions. Asymptotic notation. Recurrences: sub- stitution, iteration, master method. Review and analysis of sorting methods: insertion sort, merge sort, heapsort, quicksort. Algorithms design techniques. Dynamic programming, Greedy algorithms. Divide-and-conquer algorithms. Graph algorithms. String matching algorithms. Approximation algorithms. Ex- amples of problems which can be solved using each of these
techniques. Examination: One 2hour written paper Coursework