Faculty of Information Technology

Undergraduate - Unit

This unit entry is for students who completed this unit in 2014 only. For students planning to study the unit, please refer to the unit indexes in the the current edition of the Handbook. If you have any queries contact the managing faculty for your course or area of study.

print version

6 points, SCA Band 2, 0.125 EFTSL

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

FacultyFaculty of Information Technology
OfferedClayton First semester 2014 (Day)
Malaysia First semester 2014 (Day)
Clayton Second semester 2014 (Day)


Algorithms are recipes for solving a problem. They are fundamental to computer science and software engineering. Algorithms are the formal foundation of computer programming but also exist independently of computers as systematic problem-solving procedures. This unit introduces algorithmics, the study of algorithms. It is not about programming and coding but rather about understanding and analysing algorithms and about algorithmic problem-solving, i.e. the design of systematic problem-solving procedures. The unit will not require any knowledge of a programming language and is very hands-on. Students will develop algorithms to solve a wide variety of different problems, working individually as well as together in groups and as a class.

Topics include: What is a computational problem and what is an algorithm; basic control structures; basic data structures; modular algorithm structure; recursion; problem-solving strategies for algorithm development; understanding the efficiency of an algorithm; and limitations of algorithms.


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

  • describe an algorithm consisting of basic structures (sequence, choice, iteration, modules) at the level of detail required for a particular audience;
  • demonstrate how basic data structures (list, graphs, trees, sets, tables) function;
  • create simple recursive and iterative algorithms;
  • evaluate different possible strategies for developing an algorithm and be able to select an appropriate one to solve a given problem;
  • apply standard patterns to develop algorithms;
  • break problems down into simpler problems;
  • determine the complexity of simple algorithms;
  • recognise the limitations of algorithms.


Examination (3 hours): 60%; In-semester assessment: 40%

Chief examiner(s)

Workload requirements

Minimum total expected workload equals 12 hours per week comprising:

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

  • Two hours of lectures
  • One 2-hour tutorial

(b.) Additional requirements (all students):

  • A minimum of 2-3 hours of personal study per one hour of contact time in order to satisfy the reading and assignment expectations.

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

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