• Offered by Research School of Computer Science
  • ANU College ANU College of Engineering and Computer Science
  • Course subject Computer Science
  • Areas of interest Computer Science, Software Engineering
  • Academic career Undergraduate
  • Course convener
    • Dr Weifa Liang
  • Mode of delivery In Person
  • Co-taught Course COMP6466
  • Offered in Second Semester 2016
    See Future Offerings


This course deals with the study of algorithms for solving practical problems, and of the data structures used in algorithm implementations. Detailed analysis of the resource requirements of algorithms will be an important issue.
The topics covered will include: mathematical tools, greedy algorithms, dynamic programming, divide-and-conquer, data structures (hash tables, binary search trees, red-black trees, and disjoint sets), basic search techniques (breadth-first search and depth-first search), graph algorithms (topo-logical sort, minimum spanning trees and single-source and all-to-all shortest paths), etc.

Learning Outcomes

On completion of this course the student will:
  • Display an advanced 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.
  • Expertly apply the most effective algorithmic techniques including dynamic programming, greedy policy, and divide-and-conquer, to solve some practical problems.
  • Define and analyse time and space complexities of algorithms.
  • Demonstrate experience in the design and implementation of algorithms for practical problems, using languages like C, C++.
Professional Skills Mapping
Mapping of Learning Outcomes to Assessment and Professional Competencies

Other Information


Indicative Assessment

There will be SIX quizzes (Q), TWO assignments (a1 and a2) (A), ONE mid-semester exam (M), and ONE final exam (F). Following the School assessment policy, the final mark of this course will be calculated by the  formula (see PDF), subject to necessary adjustment during the School examination meeting.

The ANU uses Turnitin to enhance student citation and referencing techniques, and to assess assignment submissions as a component of the University's approach to managing Academic Integrity. While the use of Turnitin is not mandatory, the ANU highly recommends Turnitin is used by both teaching staff and students. For additional information regarding Turnitin please visit the ANU Online website.


The course consists of about thirty lectures, six tutorials/labs (two hours each) which run together.

Requisite and Incompatibility

To enrol in this course you must have completed COMP1110 or COMP1140 or COMP1510 and 6units of 2000-level COMP courses and 6 units of 2000-level MATH courses or COMP2600. You are not able to enrol in this course if you have successfully completed COMP6466.

Prescribed Texts

The following text book will be used for this course:

  1. T. H. Cormen, C. E. Leiserson, R. L. Rivest and C. Stein,Introduction to Algorithms, MIT Press,3rd Ed., 2009.

The following reference books are recommended for this course:

  1. Robert Sedgewick,Algorithms in C (or JAVA), Addison-Wesley, 3rd Edition, 2002.
  2. Sara Baase and Allen Van Gelder,Computer Algorithms { Introduction to Design and Anal-ysis, Addison-Wesley, 3rd Edition, 2000.
  3. John Kleinberg and Eva Tardos,Algorithms Design, Addison-Wesley, 2005.
  4. Sanjoy Dasgupta, Christos Papadimitriou and Umesh Vazirani,Algorithms, McGraw HillHigher Education, 2008.
  5. Alfred V. Aho, John E. Hopcroft and Je rey D. Ullman,The Design and Analysis of Com-puter Algorithms, Addison-Wesley, 1974





Tuition fees are for the academic year indicated at the top of the page.  

If you are a domestic graduate coursework or international student you will be required to pay tuition fees. Tuition fees are indexed annually. Further information for domestic and international students about tuition and other fees can be found at Fees.

Student Contribution Band:
Band 2
Unit value:
6 units

If you are an undergraduate student and have been offered a Commonwealth supported place, your fees are set by the Australian Government for each course. At ANU 1 EFTSL is 48 units (normally 8 x 6-unit courses). You can find your student contribution amount for each course at Fees.  Where there is a unit range displayed for this course, not all unit options below may be available.

6.00 0.12500
Domestic fee paying students
Year Fee
2016 $3276
International fee paying students
Year Fee
2016 $4368
Note: Please note that fee information is for current year only.

Offerings and Dates

The list of offerings for future years is indicative only

Second Semester

Class number Class start date Last day to enrol Census date Class end date Mode Of Delivery
7339 18 Jul 2016 29 Jul 2016 31 Aug 2016 28 Oct 2016 In Person

Responsible Officer: Registrar, Student Administration / Page Contact: Website Administrator / Frequently Asked Questions