Module Overview

Algorithmic Analysis

Analysis of algorithms and design of algorithms. This module provides the student with the knowledge and skills to analyse and design algorithms.

Module Code

ALGO H4001

ECTS Credits

5

*Curricular information is subject to change

Basic Data Structures

Queues, trees, heaps, priority queues, graphs.

Analysis of Algorithms

Program costs: time and space, worst case and average case analysis, asymptotic and "big O" notation, polynomial and exponential growth.

Algorithms

Algorithm design strategies: top down design, divide and conquer, recursion, graphing, advanced sorting & searching techniques, advanced pattern matching.

Graph Algorithms

Introduction to discrete optimisation algorithms: dynamic programming, greedy algorithms, shortest path problems, spanning tree problems, depth-first and breadth-first search algorithms, topological sorting, connected components, matrix algorithms.

Search Trees

AVL trees, red-black trees, B+ trees

Cryptography

Simple encryption algorithms.

Module Content & Assessment
Assessment Breakdown %
Other Assessment(s)40
Formal Examination60