Abstract

This subject builds on the students' previous knowledge of programming in a high-level language. It provides a study of abstract data types and classical data structures, including their implementation and their use in applications. Students will use their knowledge of object-oriented design techniques and extend these to solve programming problems.

Syllabus

Review of Java, the Java programming environment and object-oriented programmingDesign patterns for data structuresLinear and binary searchArrayList representationLinked data representations and their associated processing techniquesRecursionStacks, queues, binary trees, heaps and graphsSorting, Big-O notation and sort comparisons

Learning outcomes

Upon successful completion of this subject, students should:
1.
be able to apply a variety of abstract data structures to the solution of welldefined problems;
2.
be able to implement selected data structures in the Java language; and
3.
be able to design well structured solutions to programming problems and implement these solutions in the Java language.

Enrolment restrictions

Pre-requisite