Module Overview


This module introduces the learner to basic algorithms and their implementation.  The theory and application of this subject is a cornerstone of computer science and data analytics.  The module does not assume a prior knowledge of computer science.

Module Code

MATH 1812

ECTS Credits


*Curricular information is subject to change
  • Data types and structures. Problem specification, divide and conquer, stepwise refinement, top down, bottom up, algorithms, pseudo-code.
  • Array, lists, stacks, queues, trees, abstract data types.
  • Summations, products, permutations, factorials and Fibonacci numbers
  • Network algorithms for connnecting and counting groups
  • Internal and external sorting algorithms. Sorting Terminology and notation. Various sorting algorithms. Empirical comparison of sorting algorithms.
  • Searching algorithms, searching arrays, dynamic data structures, trees.
  • Encryption and decryption methods
  • Pseudorandom number generators, middle-square method.
  • Nodal representations of function with applications for example neural networks.

The module will be delivered by a combination of lectures and tutorials.  The student self-study will include the use of the programming language introduced earlier in their studies to implement the algorithms. 

Module Content & Assessment
Assessment Breakdown %
Formal Examination70
Other Assessment(s)30