Nanyang Technological University Center for Continuing Education
Advanced Algorithmic Techniques With Applications
This course has no confirmed dates in the future. Subscribe to be notified when it is offered.
About the course
The theory of algorithms is an important foundation of both Computer Science and Computer Engineering. This is a third course on algorithms to provide students with additional algorithmic techniques and expose them to the theory of computational complexity, which offers a deeper understanding of the demarcation between hard and easy problems.
Through this course, we will learn
- Additional algorithmic techniques.
- Additional problem areas and their algorithmic solutions.
- Lower bounds and the theory of computational complexity
Hard Problems and Complexity Theory
- Key ideas: Decision and optimization problems, P and NP, NP-completeness and reductions
- Sample Applications
Approximation Algorithms and Heuristics
- Key ideas: Heuristic vs approximation algorithms.
- Sample Applications: Set covering, TSP, scheduling.
- Key ideas: Monte Carlo and Las Vegas algorithms.
- Sample Applications: Hashing and Bloom filters
Introduction to Lower Bounds
- Key ideas: Lower bound theory
- Sample Applications: searching, sorting, etc.
Who should attend
Professionals who wish to further improve their algorithmic techniques for solving non-trivial problems. School teachers who wish to refresh the concepts about algorithms; - Any one with intellectual curiosity about computing and wishes to improve problem solving techniques.