Handbook home
Algorithms and Data Structures (COMP20003)
Undergraduate level 2Points: 12.5On Campus (Parkville)
About this subject
Contact information
Semester 2
Nir Lipovetzky
nir.lipovetzky@unimelb.edu.au
Lars Kulik
lkulik@unimelb.edu.au
Overview
Availability | Semester 2 |
---|---|
Fees | Look up fees |
AIMS
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.
INDICATIVE CONTENT
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.
Please view this video for further information: Algorithms and Data Structures
Intended learning outcomes
On completion of this subject the student is expected to:
- Present arguments for the correctness or incorrectness of a given algorithm
- Reason about and evaluate the efficiency behaviour of a given algorithm
- Choose appropriate data structures and algorithms for a given problem
- 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: 2 November 2024