Module details
CO522 Algorithms, Data Structures and Complexity (15 credits)
Syllabus
- Data and Algorithm Design:
- Dynamic data structures: trees, queues, heaps and priority queues;
- Sorting and searching algorithms, both in their own right and as
components of more complex algorithms;
- Graph algorithms: depth and breadth-first search, union-find,
minimal-cost spanning trees;
- A small selection of more complex algorithms including geometric
search algorithms.
- Estimation and efficiency:
- Informal estimation and approximate calculations;
- Detailed analysis of the time complexity of some simple algorithms
including best, worst and average behaviour;
- Techniques for analysing and comparing the asymptotic behaviour of
algorithms.
- Numerical computation:
- Mathematical models;
- The importance of numerical computation;
- Representation of real numbers in computers – floating-point
formats;
- The limitations of finite-precision arithmetic, cancellation,
portability of code;
- A comparison of different algorithms for certain numerical problems.
Note
This web page provides advance information about a module due
to run in the coming academic year. We believe the details are
accurate at the time of writing but they may be subject to
change.