DATA STRUCTURES AND ALGORITHMS
2008/2009, Semester 2
School of Computing (Computer Science)
Modular Credits: --
Aims & Objectives
This module is the second part of a two-part series on introductory programming from a functional paradigm. It emphasizes on algorithms, data structures, and software engineering. It also demonstrates programming language as an abstraction of computation by gradually revealing 'the details of computation': from a purely functional language transiting to an object-oriented paradigm of programming. Topics covered include: software engineering concepts, classic data structures (lists, stacks, queues, and their algorithmic designs), various forms of sorting methods, trees, BST, AVL tree, order property, hash tables, heap and priority queues, graphs representation and various graph-search algorithms, basic algorithmic analysis, register-machine interpreter, object-oriented language.
Prerequisites: CS1101S Preclusions: CS1102, CS1102C
Wed 1000-1200 COM1/206, first lecture: 14/1/2009
Fri 1100-1200 COM1/206
Each student will attend one 1-hour tutorial session per week. Details to be announced.
Each student will attend one 2-hour lab session per week. Details to be announced.
Continuous assessment: 50%
Final exam: 50%
Details see Materials Website
Monday 2-4pm, COM1, #03-28.