Catalogue of Modules, University of Nottingham

G54ALG Algorithm Design
(Last Updated:03 May 2017)

Year  10/11

Total Credits: 10

Level: Level 4

Target Students:  Students on MSc courses in the School of Computer Science and the School of Mathematics. Also available to students from other Schools with the agreement of the module convenor.  Available to JYA/Erasmus students.

Taught Semesters:

Autumn Assessed by end of Autumn Semester 

Prerequisites: Significant prior knowledge of discrete mathematics and programming (equivalent to entry requirements for the Masters degrees in Scientific Computation or Advanced Computing Science)

Corequisites:  None.

Summary of Content:  

This module is part of the Programming theme in the School of Computer Science.

This module introduces the principles of constructing efficient and reliable computer algorithms. Basic methodologies and theoretical foundations in the design and analysis of algorithms are covered and applied to a variety of problems.


  • Formal proof methods, analysing time and space usage, an intuitive and formal introduction to the concept of order and growth, methods solving recurrence equations, divide and conquer approach, dynamic programming approach, greedy approach and case studies.

    Method and Frequency of Class:

    ActivityNumber Of WeeksNumber of sessionsDuration of a session
    Lecture 11 weeks1 per week2 hours

    Activities may take place every teaching week of the Semester or only in specified weeks. It is usually specified above if an activity only takes place in some weeks of a Semester

    Method of Assessment: 

    Assessment TypeWeightRequirements
    Exam 1 50 2 hour written examination 
    Coursework 1 50 Proof, algorithm design and algorithm analysis problems 

    Dr E Ozcan

    Education Aims:  The aim of this module is to provide a foundation in mathematical methods and develop the skills needed to design efficient and reliable algorithms.

    Learning Outcomes:  Knowledge and Understanding:
    the basic principles of algorithm design and analysis.

    Intellectual Skills:
    the ability to understand and apply algorithmic design concepts, analyse a given algorithm.

    Professional Skills:
    the ability to design a variety of algorithms based on different (or same) paradigm(s),
    compare the efficiency of algorithms designed for solving a given problem.

    Transferrable Skills:
    the ability to solve problems using efficient algorithms.

    Offering School:  Computer Science

    Use the Back facility of your browser to return to the previous page.

    Module Catalogue Search for another module

    [UoN Welcome Page] Return to The University of Nottingham Welcome Page