If you find any data displayed on this website that should be amended, please contact the Curriculum Management Team.
Module Title
LH Design and Analysis of Algorithms
School
Mathematics
Department
Mathematics
Module Code
06 31294
Module Lead
Wu Zujian
Level
Honours Level
Credits
10
Semester
Semester 1
Pre-requisites
Co-requisites
Restrictions
Available only to students on the JI dual degree programmes
Exclusions
Description
The module covers techniques for the design and analysis of efficient algorithms, emphasizing methods useful in practice. Topics include sorting; search trees, heaps, and hashing; divide-and-conquer; dynamic programming; greedy algorithms; amortized analysis; graph algorithms; and shortest paths.
The course covers core material in data structures and algorithm design, and also helps students prepare for research in the field of algorithms.
Learning Outcomes
By the end of the module students should be able to:
Analyze worst-case running times of algorithms using asymptotic analysis
Describe the divide-and-conquer paradigm and explain when an algorithmic design situation calls for it
Describe the dynamic-programming paradigm and explain when an algorithmic design situation calls for it
Describe the greedy paradigm and explain when an algorithmic design situation calls for it
Explain the different ways to analyze randomized algorithms
Analyze randomized algorithms
Compare between different data structures
Program and analyse classical algorithms
Assessment
Assessment Methods & Exceptions
Assessment:
Homework and class test (30%): 10% homework, 2 maximum two hour class test.
Final examination (70%): a maximum 3 hour examination.