IFN664 Advanced Algorithms and Computational Complexity


To view more information for this unit, select Unit Outline from the list below. Please note the teaching period for which the Unit Outline is relevant.


Unit Outline: Semester 1 2026, Gardens Point, Internal

Unit code:IFN664
Credit points:12
Pre-requisite:IFN584 or (IFN563 and IFN564) or (IFQ563 and IFQ564)
Equivalent:IFQ664
Coordinator:Xavier Boyen | xavier.boyen@qut.edu.au
Disclaimer - Offer of some units is subject to viability, and information in these Unit Outlines is subject to change prior to commencement of the teaching period.

Overview

This unit teaches you data structures, algorithms, and algorithm analysis. When faced with a challenging software problem to solve, it is important to be familiar with a range of clever, but general algorithms and data structures that others in the field have already developed. When no ready-made solution exists, it is important to understand and be guided by the general principles of algorithm design, and to draw upon the experience of the profession in creating new methods. You will learn how to analyse the time efficiency of new and existing algorithms, to determine their suitability for the task at hand.  And most importantly, you will learn how to apply your knowledge to solve practical real-world problems.

Learning Outcomes

On successful completion of this unit you will be able to:

  1. Discuss the structure and use cases of a range of advanced data structures, algorithms, and complexity.
  2. Analyse the time efficiency of algorithms using advanced complexity concepts.
  3. Evaluate algorithms for particular applications.
  4. Apply a range of algorithm design techniques to create new algorithms for solving computational problems
  5. Collaborate in a team environment to implement advanced data structures and algorithms and communicate algorithms and complexity analysis professionally to stakeholders.
  6. Create software adapting existing advanced data structures and algorithms to solve practical real-world problems.

Content

  • Advanced algorithm analysis techniques, including iterative algorithm analysis techniques and recursive algorithm analysis techniques
  • Algorithm design techniques including advanced algorithm design techniques, such as dynamic programming, divide and conquer, greedy and backtracking.
  • Data structures, including advanced data structures, such as graph and heap.
  • Algorithms, including advanced algorithms, such as graph algorithms

Learning Approaches

This unit will use a traditional approach to teaching making use of on-line resources, face-to-face lectures and tutorials, and your own individual practice. The on-line resources may include readings and videos from readily available external sources to help explain complex topics. Weekly classes consist of a two-hour lecture (which will be recorded) and an accelerated one-hour tutorial. Students are assumed to be familiar with computer programming and are encouraged to engage in hands-on experiments on the concepts covered in class.

Feedback on Learning and Assessment

Feedback in this unit is provided in the following ways:

  • You can ask the teaching staff for advice and assistance during lectures and tutorial sessions.
  • You will receive formative peer and academic feedback on the tutorial exercises.
  • You are always welcome to ask written detailed technical question to the teaching staff.
  • You will receive written feedback on the major project.

Assessment

Overview

The assessment is designed to allow you to demonstrate each of the learning outcomes for this unit.

Unit Grading Scheme

7- point scale

Assessment Tasks

Assessment: Project (Applied)

Implement advanced data structures and algorithms to solve a real-world problem and perform a detailed computational complexity analysis.

The use of generative artificial intelligence (GenAI) tools is prohibited during this assessment.

This assignment is eligible for the 48-hour late submission period and assignment extensions. 

Weight: 50
Length: 30-45 hours
Individual/Group: Group
Due (indicative): Week 12
Related Unit learning outcomes: 1, 2, 3, 4, 5, 6

Assessment: Final Exam

A traditional exam consisting of multiple-choice questions and short answer questions.

The use of generative artificial intelligence (GenAI) tools is prohibited during this assessment.

Weight: 50
Individual/Group: Individual
Due (indicative): During central examination period
Central exam duration: 2:10 - Including 10 minute perusal
Related Unit learning outcomes: 1, 2, 3

Academic Integrity

Academic integrity is a commitment to undertaking academic work and assessment in a manner that is ethical, fair, honest, respectful and accountable.

The Academic Integrity Policy sets out the range of conduct that can be a failure to maintain the standards of academic integrity. This includes, cheating in exams, plagiarism, self-plagiarism, collusion and contract cheating. It also includes providing fraudulent or altered documentation in support of an academic concession application, for example an assignment extension or a deferred exam.

You are encouraged to make use of QUT’s learning support services, resources and tools to assure the academic integrity of your assessment. This includes the use of text matching software that may be available to assist with self-assessing your academic integrity as part of the assessment submission process.

Breaching QUT’s Academic Integrity Policy or engaging in conduct that may defeat or compromise the purpose of assessment can lead to a finding of student misconduct (Code of Conduct – Student) and result in the imposition of penalties under the Management of Student Misconduct Policy, ranging from a grade reduction to exclusion from QUT.

Resources

This unit makes use of a prescribed textbook, industry software as well as additional resources available in the unit Canvas site. The use of industry-grade open-source software will be preferred.

Resource Materials

Prescribed text(s)

Introduction to Algorithms, 3rd Edition, by Cormen, Leiserson and Rivest, MIT Press (available as Ebook)

Software

An integrated development environment (IDE) such as VScodium (which is the open-source version of Microsoft Visual Studio without the telemetry and without the "co-pilot" AI assistant).

Other

Canvas Site; Links to other online resources will also be provided via the Canvas Site.

Risk Assessment Statement

There are no out of the ordinary risks associated with this unit.

Course Learning Outcomes

This unit is designed to support your development of the following course/study area learning outcomes.

IN20 Master of Information Technology

  1. Demonstrate advanced specialist IT knowledge in at least one information technology discipline.
    Relates to: ULO1, ULO2, Project (Applied), Final Exam
  2. Critically analyse complex IT problems and opportunities and use creativity and problem-solving skills to generate innovative and novel solutions that are convincingly justified.
    Relates to: ULO2, ULO3, ULO6, Project (Applied), Final Exam
  3. Integrate advanced, industry-best practice, IT methods, tools and techniques to develop and implement complex IT systems, processes and/or software.
    Relates to: ULO4, ULO6, Project (Applied)
  4. Communicate effectively in IT professional and scholarly contexts to specialist and non-specialist audiences using written, visual and oral formats.
    Relates to: ULO5, Project (Applied)
  5. Demonstrate business acumen and well-developed values, attitudes, behaviours and judgement in professional contexts.
    Relates to: ULO6, Project (Applied)