CO7104 C++ Programming and Advanced Algorithm Design
Convenor: Dr. N. Rahman
Two hour exam in January: 50%
Algorithms are traditionally designed, analysed and compared on a theoretical computer model. However an algorithm that is fast on the theoretical model may be relatively slow on modern computers. This module introduces the memory hierarchies on modern computer architectures and its effects on algorithm performance. The module then teaches how to design fast algorithms on modern computers.
Bjarne Stroustrup, The C++ Programming Language, 3rd edition, Addison-Wesley, 1997.
Thomas H. Cormen, Charles E. Leiserson and Ronald L. Rivest, Introduction to algorithms, 2nd edition, MIT Press, 2001.
B. H. Flowers, An introduction to numerical methods in C++, Oxford : Clarendon Press, 1995.