Algorithms and Data Structures

Subject COMP20003 (2011)

Note: This is an archived Handbook entry from 2011.

Credit Points: 12.50
Level: 2 (Undergraduate)
Dates & Locations:

This subject is not offered in 2011.

Time Commitment: Contact Hours: 2 one-hour lectures; 1 two-hour workshop (per week)
Total Time Commitment: 120 hours

25 points of university-level Mathematics, PLUS one of the following:

Study Period Commencement:
Credit Points:
Not offered in 2011


A mark of 80 or more in

Study Period Commencement:
Credit Points:
Not offered in 2011
Corequisites: None
Recommended Background Knowledge: None
Non Allowed Subjects:
Core Participation Requirements:

For the purposes of considering request for Reasonable Adjustments under the Disability Standards for Education (Cwth 2005), and Students Experiencing Academic Disadvantage Policy, academic requirements for this subject are articulated in the Subject Overview, Objectives, Assessment and Generic Skills sections of this entry.

It is University policy to take all reasonable steps to minimise the impact of disability upon academic study, and reasonable adjustments will be made to enhance a student's participation in the University's programs. Students who feel their disability may impact on meeting the requirements of this subject are encouraged to discuss this matter with a Faculty Student Adviser and the Disability Liaison Unit:


Associate Professor Tim Baldwin


Subject Overview: Programmers can choose between several representations of data. These will have different strengths and weaknesses, and each will require its own set of algorithms. This subject will cover some of the most frequently used data structures and their associated algorithms. The emphasis will be on justification of algorithm correctness, on analysis of algorithm performance, and on choosing the right data structure for the problem at hand. Topics include: justification of algorithm correctness; asymptotic and empirical analysis of algorithm performance; algorithms for sorting and searching, including fundamental data structures such as trees and hash tables; and graph algorithms.
Objectives: On successful completion of the subject students should be able to:
  • Present arguments for the correctness or incorrectness of a given algorithm
  • Reason about the behaviour of a given algorithm
  • Evaluate the asymptotic running time of fundamental algorithms
  • Apply knowledge of basic science and engineering fundamentals
  • Choose appropriate data structures and algorithms for a given problem; and
  • Implement the chosen data structures and algorithms

Project work during semester expected to take about 36 hours (30%); a mid-semester test (10%); and a 3-hour end-of-semester examination that includes a practical programming component (60%). To pass the subject, students must obtain at least 50% overall, 15/30 in project work, and 35/70 in the mid-semester test and end-of-semester examination combined.

Prescribed Texts: None
Breadth Options:

This subject potentially can be taken as a breadth subject component for the following courses:

You should visit learn more about breadth subjects and read the breadth requirements for your degree, and should discuss your choice with your student adviser, before deciding on your subjects.

Fees Information: Subject EFTSL, Level, Discipline & Census Date
Generic Skills: On completion of this subject students should have the:
  • Ability to apply knowledge of basic science and engineering fundamentals
  • In-depth technical competence in at least one engineering discipline
  • Ability to undertake problem identification, formulation and solution

This subject is offered for the first time in Semester 2, 2009 and replaces COMP20001 of the same name.

This subject is available for science credit to students enrolled in the BSc (both pre-2008 and new degrees), BASc or a combined BSc course.

Students undertaking this subject will be expected to regularly access an internet-enabled computer.

This subject is available as breadth, for the following Bachelor courses; Arts, Commerce, Environments and Music.

Related Course(s): Bachelor of Computer Science and Bachelor of Laws
Bachelor of Science
Related Majors/Minors/Specialisations: B-ENG Software Engineering stream
Master of Engineering (Mechatronics)
Science credit subjects* for pre-2008 BSc, BASc and combined degree science courses
Related Breadth Track(s): Computer Science

Download PDF version.