Catalogue of Modules, University of Nottingham

G52ADS Algorithms and Data Structures
(Last Updated:03 May 2017)

Year  12/13

Total Credits: 10

Level: Level 2

Target Students:  Part I undergraduate students in the School of Computer Science. 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: Or equivalent programming experience (e.g. G51PRG up to 2009/10) and knowledge of mathematics.

Corequisites:  None.

Summary of Content:  

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

This module introduces the basics of specifying abstract data types and using them to design programs. Commonly used data structures and algorithms are studied in depth. The emphasis is made on choosing data structures and algorithms appropriate for solving a given problem.

It presents the mathematical analysis of time and space usage of algorithms using the big-Oh notation. The module covers the use of such mathematical analysis to support algorithm design decisions. It presents the usage of pre/post-conditions and loop invariants to aid in the design and implementation of algorithms. Specific algorithms and data structures may include, but are not limited to: stacks, queues, and lists; trees and tree traversal methods; heaps, search trees; graph problems and graph algorithms such as shortest paths and minimum spanning trees.

Module Web Links:
  • Reading List
  • Method and Frequency of Class:

    ActivityNumber Of WeeksNumber of sessionsDuration of a session
    Lecture 11 weeks2 per week1 hour
    Computing 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 75 1.5 hr written examination 
    Coursework 1 25 Continuous assessment, including programming and writing of reports, possibly with some under exam conditions. 

    Dr A Parkes

    Education Aims:  The main aim of this module is to convey an understanding of the issues involved in designing a program for a specific task, and a good working knowledge of some common algorithms and data structures.

    Learning Outcomes:  

    Knowledge and Understanding:

    The theory and practice of implementing algorithms; to know of and understand the mathematical properties of algorithms.

    Intellectual Skills:

    To be able to apply mathematical techniques to algorithms and data structures. To be able to understand the specification of data structures and algorithms.

    Professional Skills:

    To implement data structures and algorithms, evaluate available tools, applications, algorithms and data structures, and select those that are fit for purpose within a given domain/scenario.

    Transferable Skills:

    To be able to solve problems using a variety of data structures and algorithms. To use mathematical techniques when necessary to achieve the above.

    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