1. Handbook
  2. Subjects
  3. Algorithms and Data Structures

Algorithms and Data Structures (COMP20003)

Undergraduate level 2Points: 12.5Campus: Parkville

You’re viewing the 2017 Handbook. View archived Handbooks


Year of offer2017
Subject levelUndergraduate Level 2
Subject codeCOMP20003
Mode of delivery
On Campus — Parkville
Semester 2
FeesSubject EFTSL, Level, Discipline & Census Date


Programmers can choose between several representations of data. These will have different strengths and weaknesses, and each will require its own set of algorithms. Students will be introduced to 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. Leading up to an exam with a programming component, quality implementation of algorithms and data structures is emphasized.

This subject, or its cognate COMP20007 Design of Algorithms, is a prerequisite for many 300-level subjects in the Computing and Software Systems major.



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.


Learning outcomes


On completion of this subject the student is expected to:

  1. Present arguments for the correctness or incorrectness of a given algorithm
  2. Reason about and evaluate the efficiency behaviour of a given algorithm
  3. Choose appropriate data structures and algorithms for a given problem
  4. Implement the chosen data structures and algorithms.

Generic skills

On completion of this subject, students should have developed the following skills:

  • Application of knowledge of basic science and engineering fundamentals
  • Effective communication about computational efficiency
  • Capacity to reason and solve problems
  • Ability to undertake problem identification, formulation and solution
  • Programming competency
  • Capacity for creativity and innovation
  • Profound respect for truth and intellectual integrity, and for the ethics of scholarship.

Last updated: 27 March 2017