CSU22012 – Algorithms and Data Structures II

Module CodeCSU22012
Module NameAlgorithms and Data Structures II
ECTS Weighting [1]5 ECTS
Semester TaughtSemester 2
Module Coordinator/s  Dr. Anthony Ventresque

Module Learning Outcomes

On successful completion of this module, students will be able to:

  1. Have the ability to evaluate algorithms in terms of their running time and memory space requirements and classify those algorithms in the major complexity classes using appropriate performance models;
  2. Be able to identify the most suitable data structures and algorithms for each programming problem based on the parameters of the problem, the advantages and limitations of each data structure and algorithm, the resources available, the desired performance criteria etc.;
  3. Have gained experience in implementing effective new and existing algorithms;
  4. Have gained knowledge of different algorithm design approaches;
  5. Have gained experience both in working as an individual and in a team on designing and developing software solutions utilizing the most appropriate algorithms;
  6. Have gained experience in communicating their solutions through writing, demonstrations and presentations.

Module Content

  • Recursion vs iteration;
  • Greedy algorithms;
  • Divide and conquer;
  • Graph algorithms;
  • Searching and Sorting algorithms;
  • Dynamic Programming algorithms.

Teaching and Learning Methods

  • 2 hours of lectures, 1 hour of lab per week.
  • Individual coursework assignments.
  • Quizzes and e-tests.

Assessment Details

  • Various continuous assessments (exercises, tests and projects) 60%
  • 2-hour end of semester written exam 40%

Reassessment Details

In person Examination 2hrs 100%.

Contact Hours and Indicative Student Workload

Contact Hours (scheduled hours per student over full module), broken down by:36 hours
Lecture24 hours
Laboratory12 hours
Tutorial or seminar0 hours
Other0 hours
Independent Study (outside scheduled contact hours), broken down by:64 hours
Preparation for classes and review of material (including preparation for examination, if applicable)32 hours
Completion of assessments (including examination, if applicable)32 hours
Total Hours100 hours

Recommended Reading List

Main textbook:

Module Pre-requisites

Prerequisite modules: CSU22011: Algorithms and Data Structures I

Other/alternative non-module prerequisites: N/A

Module Co-requisites

N/A

Module Website

Blackboard