FIT1054 Fundamentals of algorithms (Advanced)
Faculty of Information Technology
FIT1054 Fundamentals of algorithms (Advanced) is a level 1, 6-credit-point, undergraduate unit from the Faculty of Information Technology, offered in 2026 in Semester 2 at Clayton. It needs FIT1058 and (FIT1045 or FIT1053) and unlocks 8 units, leading on to 42 units in all.
- Credit points
- 6
- Offered in 2026
- Semester 2
- Clayton
- Assessment
- No exam
- 2 tasks
- Workload
- 144 hours
- per semester
The 2027 handbook has no page for FIT1054. This is its 2026 entry, the latest one.
Reviews
No reviews yetNo reviews yet. Be the first to review FIT1054.
Requisites
Before FIT1054
Prohibitions
You can't enrol if you have passed any of these.
Prerequisites
Pass these before you enrol.
After FIT1054
8 units list FIT1054 as a prerequisite or corequisite.
- FIT2004Algorithms and data structuresRated 4.0 out of 5 from 1 review
- FIT2014Theory of computationRated 4.0 out of 5 from 1 review
- FIT2099Object oriented design and implementationRated 3.0 out of 5 from 1 review
- FIT2102Programming paradigmsNo reviews yet
- FIT2109Computer science workshopNo reviews yet
- FIT2179Data visualisationNo reviews yet
- FIT3139Computational modelling and simulationNo reviews yet
- FIT3179Data visualisationNo reviews yet
Enrolment rules
Prerequisite: You must be enrolled in the Bachelor of Computer Science Advanced (Honours) (C3001) or by permission from the Faculty.
Equivalent units
The same content under another code. Only one of them counts.
Overview
Data structures and algorithms are the tools that allow programs to solve problems efficiently, reliably and at scale. This unit develops the core algorithmic thinking and implementation skills needed to move from a problem statement to a well-structured computational solution. You will learn to represent problems using appropriate data structures, design algorithms that use those structures effectively, and reason about how choices affect correctness, performance and maintainability. The unit covers recursion, introductory complexity analysis, and structures such as stacks, queues, trees, heaps and hash tables. You will evaluate algorithm behaviour both theoretically and experimentally, building a practical understanding of time, space and trade-offs. Through structured programming activities, you will strengthen your ability to design, implement, test and explain algorithmic solutions. The unit builds disciplined habits of precise reasoning, careful coding, performance awareness and reflection, preparing you for later study in advanced algorithms, software design, artificial intelligence, systems and computational problem solving.
Offerings in 2026
| Teaching period | Campus | Mode |
|---|---|---|
| Second semester | Clayton | On campus |
Assessment
- Learning PortfolioPortfolioCompetency hurdle100%
- Theory TestQuiz / TestCompetency hurdle-
Assessment details may change. Please refer to the assessment information in Moodle closer to the start of the teaching period.
Learning outcomes
When you finish this unit, you should be able to:
- 1
Analyse computational problems to identify suitable algorithmic strategies, data representations and performance considerations.
- 2
Demonstrate understanding of data structures and algorithms by implementing, using, and testing them in ways that support correctness, readability and maintainability.
- 3
Design modular algorithmic solutions using appropriate abstract data types, including lists, stacks, queues, trees, heaps and hash tables.
- 4
Demonstrate awareness and working knowledge of relevant tools and technologies, and use them effectively to increase productivity and improve quality, such as IDEs, AI, and Version Control Systems.
- 5
Plan, monitor, and reflect on the development of your algorithmic thinking and implementation practice through focused problem solving, feedback and iterative improvement.
- 6
Communicate algorithmic reasoning and correctness, implementation choices, performance trade-offs and testing evidence using appropriate technical terminology and representations.
Workload and teaching
- Applied sessions24 hours
- Workshops24 hours
- Teaching approachPeer assisted learning
Minimum total expected workload to achieve the learning outcomes for this unit is 144 hours per semester typically comprising a mixture of scheduled online and face to face learning activities and independent study. Independent study may include associated reading and preparation for scheduled teaching activities.
Learning resources
Recommended resources
1. Programmer's Field Guide: https://programmers.guide for Learning to Program in C++ 2. Introduction to Algorithms by Thomas Cormen, Charles Leiserson, Ronald Rivest, and Clifford Stein as a reference book. 3. Visualisation of data structures and algorithms covered in the unit: https://www.cs.usfca.edu/~galles/visualization/Algorithms.html
Where it fits
FIT1054 is part of 3 areas of study in the 2026 handbook.
Contacts
- Unit Coordinators
- Brendon Taylor
- Chief Examiners
- Ali Toosi
Common questions
What are the prerequisites for FIT1054?
You need FIT1058 and (FIT1045 or FIT1053) before you enrol. Enrolment rules also apply.
What can I take after FIT1054?
FIT1054 is a prerequisite or corequisite for 8 units, including FIT2004, FIT2014, FIT2099, FIT2102, FIT2109 and FIT2179. Those lead on to 42 units in all.
When is FIT1054 offered?
In 2026, FIT1054 runs in Semester 2 at Clayton.
How much work is FIT1054?
The handbook expects about 144 hours of study across the semester. No students have rated its difficulty yet.
Does FIT1054 have an exam?
No. FIT1054 has 2 assessment tasks and no exam.
Which majors and minors include FIT1054?
FIT1054 is part of Computational science.