Course - Algorithms and Data Structures HT24
Follows on from Course - Design and Analysis of Algorithms HT23U and explores some more advanced topics in the analysis of algorithms and data structures. Introduces amortised analysis (rather than viewing each operation on a data structure independently, how do they perform over a series of operations?). Formally defines $\mathbf P$ and $\mathbf{NP}$ and analyses some techniques for tackling $\mathbf{NP}$ problems; namely kernelisation, LP relaxation, and approximation algorithms.
- Course Webpage
- Lecture Slides
- Successor to: Course - Design and Analysis of Algorithms HT23U
- Other courses from this term: Courses HT24U
Notes
- Notes - ADS HT24, Amortized analysisU
- Notes - ADS HT24, Binary search treesU
- Notes - ADS HT24, Splay treesU
- Notes - ADS HT24, Red-black treesU
- Notes - ADS HT24, Disjoint setsU
- Notes - ADS HT24, Flow networksU
- Notes - ADS HT24, CirculationsU
- Notes - ADS HT24, KernelisationU
- Notes - ADS HT24, NP-hardness and NP-completenessU
- Notes - ADS HT24, Linear programmingU
- Notes - ADS HT24, MatchingU
- Notes - ADS HT24, Zero-sum gamesU
- Notes - ADS HT24, Approximation algorithmsU
- Notes - ADS HT24, Colour codingU
- Notes - ADS HT24, Randomised roundingU
- Notes - ADS HT24, Parameterised complexityU