Faculty of Information Technology

print version

6 points, SCA Band 2, 0.125 EFTSL

Undergraduate - Unit

Refer to the specific census and withdrawal dates for the semester(s) in which this unit is offered.


Information Technology



  • First semester 2016 (Day)
  • Second semester 2016 (Day)


  • First semester 2016 (Day)
  • Second semester 2016 (Day)


This unit introduces students to core problem-solving, analytical skills, and methodologies useful for developing flexible, robust, and maintainable software. In doing this it covers a range of conceptual levels, from high-level algorithms and data-structures, down to the machine models and simple assembly language programming. Topics include data types; data structures; algorithms; algorithmic complexity; recursion; and translation to assembly language.


At the completion of this unit, students should be able to:

  1. design and implement simple algorithms;
  2. implement basic data types such as stacks, queues, lists, trees, priority queues, heaps and hash tables;
  3. compare and evaluate different algorithms and implementations of basic data types;
  4. calculate the best case and worst case big O time complexity of simple algorithms;
  5. manually translate simple high-level code into assembly code such as MIPS R2000.


Examination (3 hours): 70%; In-semester assessment: 30%

Workload requirements

Minimum total expected workload equals 12 hours per week comprising:

(a.) Contact hours for on-campus students:

  • Three hours of lectures
  • One 1-hour tutorial
  • One 3-hour laboratory

(b.) Additional requirements (all students):

  • A minimum of 5 hours of personal study per week in order to satisfy the reading and assignment expectations.

See also Unit timetable information

Chief examiner(s)

This unit applies to the following area(s) of study


((One of FIT1040, ECE2071, FIT1002) and FIT1029) or FIT1045
Students beginning FIT1008 are assumed to be able to: Identify the main components of an algorithm (variables, operators, expressions, etc), and write the algorithm associated to the specification of a simple problem. Be able to translate a simple algorithm into a program containing variable declarations, selection, repetition, and lists and/or arrays.


CSE1303, CSC1030, FIT1015, FIT2085

Additional information on this unit is available from the faculty at: