Skip to main content Skip to navigation

CY903 - Practical Algorithms & Data Structures

  • Module code: CY903
  • Module name: Practical Algorithms & Data Structures
  • Department: Centre for Scientific Computing
  • Credit: 12

Content and teaching | Assessment | Availability

Module content and teaching

Principal aims

The module provides students with a coherent introduction to uni- and shared memory multi-processor data structures with a strong focus on practical scientific computing algorithms and parallel computing. The primary focus of this module will be to educate students on the primary building blocks required to solve problems using modern desktop machines composed of uniprocessors or multicore/multiprocessors.

Principal learning outcomes

By the end of the module the student should be able to: Understand and develop a variety of techniques for designing algorithms both on uni- and multi-processor technology; Design a variety of data structures and algorithms and should be able to use them appropriately to solve problems in scientific computing; Understand some fundamental algorithms used in scientific computing and solve computational problems using these algorithms; Develop new or re-use already existing efficient algorithms to solve problems; Comprehend algorithmic complexity and be able to make educated choices when problem solving; Comprehend the importance of parallelism on modern desktop PCs and understand the pitfalls when designing algorithms for such machines.

Timetabled teaching activities

Teaching and learning methods include lectures and reading material as well as weekly practical computer laboratory sessions.

Departmental link

Module assessment

Assessment group Assessment name Percentage
12 CATS (Module code: CY903-12)
C (Assessed/examined work) Assessed Course Work 25%
Assessed Course Work 25%
Examination - Main Summer Exam Period (weeks 4-9) 50%

Module availability

This module is available on the following courses:



Optional Core


  • Postgraduate Taught Complexity Science (F3P4) - Year 2