Lecture-33 hours
Supervised time in studio/workshop-22 hours
Guided independent study-145 hours Total: 200 hours
Exclusions
Description
Algorithms lie at the heart of Computer Science and software development. They embody the way in which we solve problems using computers. This module will introduce the fundamentals of data structures and algorithms. Data structures will be formulated to represent information in such a way that it can be conveniently and efficiently manipulated by the algorithms that are developed. The ideas will be presented both abstractly, and via problem-solving and implementations.
Learning Outcomes
By the end of the module students should be able to:
Design and implement data structures and algorithms
Argue that algorithms are correct, and derive time and space complexity measures
Explain and apply data structures in solving programming problems
Make informed choices between alternative data structures, algorithms and implementations, justifying choices on grounds such as computational efficiency