Overview
This topic provides a second-level exploration of programming, with an emphasis on the data structures that frequently occur in programming problems and the algorithms for traversing and manipulating such structures. The syllabus is built around the theme of data abstraction using object- oriented programming; the main working language is C++, … For more content click the Read More button below.
Topic availabilities
To view topic availabilities, select an availability from the drop down, towards the top right of the screen.
Tuition pattern
To view tuition patterns, select an availability from the drop down, towards the top right of the screen.
Aims
This topic aims to equip students with the skills needed to solve programming problems of moderate complexity, such as applications that provide an interface to real-world data. The focus is on object-oriented techniques for representing and manipulating program data using either predefined components or custom-designed components.
Learning outcomes
On completion of this topic you will be expected to be able to:
1.
Understand and appropriately use the language and terminology of data abstraction and object-oriented programming
2.
Describe common data structures and choose appropriate data structures for specific application needs
3.
Write code to build and manipulate common linked data structures
4.
Understand and appropriate use the language and terminology of algorithm analysis
5.
Determine the time and space complexity of simple algorithms
6.
Describe the advantages and disadvantages of different algorithmic approaches in specific application contexts
7.
Implement common searching and sorting algorithms
8.
Read C++ programs and use C++ to solve simple data abstraction problems
Assessments
To view assessment information, select an availability from the drop down, towards the top right of the screen.
Requisites information
Pre-requisites:
Anti-requisites: