CO7002—Analysis and Design of Algorithms
- Convenor:
- Dr. S. Fung
- Description:
This module introduces students to the design and analysis
of algorithms. Algorithms are step-by-step procedures, such as those
executed by computers, to solve problems.
Typical problems include, for example, ``what is the shortest path between
two locations in a network?'', or ``what is the maximum set of activities that
can be chosen subject to time constraints?''
Just because a problem can be solved,
does not mean that there exists a practically time-efficient solution.
It is the goal of algorithm designers to develop better and better
algorithms for the solution of fundamental or new problems.
The main methods used to design algorithms
will be illustrated through examples of fundamental
importance in computer science and engineering.
These design methods not only apply to the problems illustrated in the
module, but also to a much wider range of problems in computer science and
engineering. As a result, students can apply the design methods learned
to other problems they encounter.
Alternatively, it can be the case that no algorithms of a certain
quality exist; algorithm designers then need to identify this limitation
of algorithms. Techniques for analysing the efficiency of algorithms and the
inherent complexities of problems will be explained.
|
|