Learning Outcomes
- On completion of this module, students will be better able to:
- Analyse algorithms to determine the running time, performance and scaling with problem size
- Design algorithmic solutions for unseen problems using foundational techniques and principles
- Devise programmes that are asymptotically efficient
- Implement well-known, high-level algorithms and adapt them efficiently to new applications
- Design, implement, and analyse their own algorithms and data structures
Description of Content
Running times:Asymptotic notation and running times
Combinatorics
Recurrence relations
Data structures:
Graphs and trees
Induction and recursion:
Foundations of algorithm design
Induction to design algorithms
Design:
Prune and search
Divide and conquer
Greedy algorithms
Algorithms:
Graph traversals
Minimum spanning tree and shortest paths
Maximum flow problem
Contact us
Dyson School of Design Engineering
Imperial College London
25 Exhibition Road
South Kensington
London
SW7 2DB
design.engineering@imperial.ac.uk
Tel: +44 (0) 20 7594 8888