CSC-10064 - Introduction to Algorithms
Coordinator: Paul Bell
Lecture Time: See Timetable...
Level: Level 4
Credits: 15
Study Hours: 150
School Office: 01782 733075

Programme/Approved Electives for 2024/25

None

Available as a Free Standing Elective

No

Co-requisites

None

Prerequisites

None

Barred Combinations

None

Description for 2024/25

This module allows students to acquire a set of problem solving techniques which can be used to break down complex problems from many real world scenarios and to solve them in an efficient way. The module differs from a standard programming modules since we will here not focus on a particular language, but instead consider solutions in a high level descriptive way, using pseudocode, so that solutions can then be derived in any programming language.
Numerous real world problems will be considered, and we will see a variety of techniques that can be used to solve them. By gaining experience of these techniques, students will be able to apply them to new scenarios that they have not seen before.

Aims
This module introduces students to computational problem solving and demonstrates the concept of an algorithm described by pseudocode as a tool to solve clearly defined computational problems which is independent of a particular programming language. Techniques will be developed to break down a complex problem into smaller components and a variety of problem solving techniques will be acquired. Properties of algorithms will be studied.

Intended Learning Outcomes

Apply appropriate techniques to systematically decompose a complex problem into smaller parts which can then be directly solved: 1
Produce pseudocode or algorithm descriptions to solve simple computational problems: 1
Derive the computational complexity of simple algorithms and define simple complexity classes: 1
Explain the notion of universal machines and undecidability: 1

Study hours

22 hours of lectures
11 hours of tutorials (working in small groups on tutorial sheets)
2 hour exam
An indicative breakdown of the 117 hours of private study would be 45 hours of revision of lecture slides and notes; 33 hours of preparation and revision of the tutorials and 37 hours of background reading on the subject.

School Rules

None

Description of Module Assessment

1: Exam weighted 100%
Examination