Skip navigation

COMP3600 Algorithms

Later Year Course

Offered By Research School of Computer Science
Academic Career Undergraduate
Course Subject Computer Science
Offered in Second Semester, 2012 and Second Semester, 2013
Unit Value 6 units
Course Description

This course deals with the study of algorithms for solving practical problems, and of the data structures used in their implementation. Detailed analysis of the resource requirements of algorithms will be an important issue.

A large variety of algorithms are candidates for study. These include, but are not limited to, the following: greedy algorithms, dynamic programming, divide-and-conquer, exhaustive search, graph algorithms, advanced data structures such as binomial heaps and Fibonacci heaps, network flow algorithms, algorithms for string matching, parallel algorithms, heuristics and approximation algorithms, and an introduction to intractability. As well as studying the implementation, the mathematical tools used to study the resource usage of algorithms will be considered.

Learning Outcomes

On completion of this course the student will:

  • Have a thorough understanding of a variety of algorithms, including linear selection, minimum spanning trees, single source shortest path, Huffman coding, etc, with real-life applications and the resource requirements.
  • Be able to apply the algorithmic techniques including dynamic programming, greedy policy, and divide-and-conquer, to solve some practical problems.
  • Be able to analyze time and space complexities of algorithms.
  • Have some experience in the design and implementation of algorithms for practical problems, using languages like C, C++.
Indicative Assessment

Assignments (40%); Final Exam (60%)

Workload

Thirty one-hour lectures and four two-hour tutorial/laboratory sessions.

Areas of Interest Computer Science and Software Engineering
Requisite Statement

COMP1110 or COMP1140 or COMP1510; 6 units of 2000-level COMP courses or enrollment in BComptlSci; and 6 units of 2000-level MATH courses or COMP2600.

Prescribed Texts

The following text book will be used for this course:

  • Cormen, T., Leiserson, C.E. Rivest. R.L. & Stein, C. Introduction to Algorithms MIT Press, 3rd Edition, 2009.

The following reference books are recommended for this course:

  • Baase, S. & Van Gelder, Allen Computer Algorithms - Introduction to Design and Analysis by Addison-Wesley, 3rd Edition, 2000.
  • Sedgewick, Robert Algorithms in C , 3rd Edition, 2002.
  • Aho, Alfred V., Hopcroft, John E., & Ullman, Jeffrey D. The Design and Analysis of Computer Algorithms , Addison-Wesley, 1974.
  • Kleinberg, John & Tardos, Eva Algorithms Design, Addison-Wesley, 2005.
Majors/Specialisations Computer Science and Mathematical Modelling
Programs Bachelor of Computational Science (Honours)
Science Group C

The information published on the Study at ANU 2012 website applies to the 2012 academic year only. All information provided on this website replaces the information contained in the Study at ANU 2011 website.

Updated:   13 Nov 2015 / Responsible Officer:   The Registrar / Page Contact:   Student Business Solutions