Note: This is an archived Handbook entry from 2015.
|Dates & Locations:|| |
This subject has the following teaching availabilities in 2015:Semester 1, Parkville - Taught on campus.
Semester 2, Parkville - Taught on campus.
Timetable can be viewed here. For information about these dates, click here.
|Time Commitment:||Contact Hours: 36 hours, comprising of two hours of lectures and one hour of tutorial per week |
Total Time Commitment:
An undergraduate degree in a cognate discipline.
|Recommended Background Knowledge:|| |
Basic proficiency in mathematics and computing.
|Non Allowed Subjects:|| |
|Core Participation Requirements:||
CoordinatorAssoc Prof Harald Sondergaard, Dr Antonette Mendoza
Dr Antonette Mendoza
Associate Professor Harald Sondergaard
The aim of this subject is for students to develop familiarity and competence in assessing and designing computer programs for computational efficiency. Although computers manipulate data very quickly, to solve large-scale problems, we must design strategies so that the calculations combine effectively. Over the latter half of the 20th century, an elegant theory of computational efficiency developed. This subject introduces students to the fundamentals of this theory and to many of the classical algorithms and data structures that solve key computational questions. These questions include distance computations in networks, searching items in large collections, and sorting them in order.
Topics covered include complexity classes and asymptotic notation; empirical analysis of algorithms; abstract data types including queues, trees, priority queues and graphs; algorithmic techniques including brute force, divide-and-conquer, dynamic programming and greedy approaches; space and time trade-offs; and the theoretical limits of algorithm power.
INTENDED LEARNING OUTCOMES (ILO)
On completion of this subject the student should be able to:
The examination is a hurdle and must be passed to pass the subject
|Prescribed Texts:|| |
A. Levitin, Introduction to the Design and Analysis of Algorithms, Pearson, 3rd edition, 2012
|Breadth Options:|| |
This subject is not available as a breadth subject.
|Fees Information:||Subject EFTSL, Level, Discipline & Census Date|
On completion of this subject students should have the following skills:
LEARNING AND TEACHING METHODS
The subject involves weekly three-hour lectures. The lectures are a mix of direct delivery and interactive student problem solving. Although written assignments are submitted by students individually, in-plenum discussion of the problems is allowed, and encouraged.
INDICATIVE KEY LEARNING RESOURCES
Students are provided with lecture slides, and links on the LMS to the in-house animated software Algorithms in Action. The slides are integrated with the well-established textbook.
CAREERS / INDUSTRY LINKS
With Big Data at the forefront of modern computing solutions, industry is ever-more focused on efficient computational analysis methods. Software engineers, developers and data analysts will find not only the analysis techniques, but also the fundamental algorithmic design concepts, highly applicable to the handling of significant datasets. Building on an initial connection in a similar undergraduate offering, there is scope for industry liaison with this subject.
Master of Information Technology |
Master of Operations Research and Management Science
Master of Philosophy - Engineering
Master of Science (Bioinformatics)
Approved Masters level subjects from other departments |
MIT Computing Specialisation
MIT Distributed Computing Specialisation
MIT Health Specialisation
MIT Spatial Specialisation
Master of Engineering (Mechatronics)
Master of Engineering (Software with Business)
Master of Engineering (Software)
Download PDF version.