MA214 Half Unit
Algorithms and Data Structures
This information is for the 2025/26 session.
Course Convenor
Prof Julia Boettcher
Availability
This course is compulsory on the BSc in Data Science and BSc in Mathematics with Data Science. This course is available on the BSc in Mathematics and Economics, BSc in Mathematics with Economics, BSc in Mathematics, Statistics and Business, Erasmus Reciprocal Programme of Study and Exchange Programme for Students from University of California, Berkeley. This course is freely available as an outside option to students on other programmes where regulations permit. It does not require permission. This course is available with permission to General Course students.
This course is capped. Places will be assigned on a first come first served basis.
Requisites
Pre-requisites:
Students must have completed MA102 or MA103 before taking this course.
Additional requisites:
Basic Knowledge of Python is essential, such as provided by ST101 or a pre-sessional provided by the Digital Skills Lab.
Course content
Introduction to the fundamental principles of data structures and algorithms and their efficient implementation. Developing algorithmic thinking. Basic toolkit for the design and analysis of algorithms: Running time, recurrence relations, big-O notation, amortised analysis, correctness, finite induction, loop invariants. Tour of the most important data structures, fundamental algorithms, and algorithm design techniques: lists, stacks, queues, dynamic arrays, hash tables, heaps, priority queues, disjoint set unions, binary search trees, incremental and recursive algorithms, divide-and-conquer, greedy algorithms, randomisation in algorithms, sorting algorithms, algorithmic lower bounds, graph algorithms. Implementation of these data structures and algorithms in Python.
Teaching
10 hours of classes and 20 hours of lectures in the Winter Term.
2 hours of lectures in the Spring Term.
Formative assessment
Problem sets weekly
Written answers to set problems will be expected on a weekly basis.
Indicative reading
- T H Cormen, C E Leiserson, R L Rivest & C Stein, Introduction to Algorithms, MIT Press, 3rd edition, 2009.
Assessment
Exam (85%), duration: 90 Minutes in the Spring exam period
Project (15%)
Key facts
Department: Mathematics
Course Study Period: Winter Term
Unit value: Half unit
FHEQ Level: Level 5
CEFR Level: Null
Keywords: algorithms, data structures, analysis, running time, programming
Total students 2024/25: 85
Average class size 2024/25: 17
Capped 2024/25: NoCourse selection videos
Some departments have produced short videos to introduce their courses. Please refer to the course selection videos index page for further information.
Personal development skills
- Self-management
- Problem solving
- Application of information skills
- Communication
- Application of numeracy skills
- Specialist skills