KV5033 - Algorithms and Data Structures

What will I learn on this module?

This module will extend your understanding of system development. You will cover the algorithms theory, implementation and processing of appropriate data structures within the context of an industry-standard approach. In particular, this module will provide the knowledge to make the application faster and scalable in terms of the time complexity and properties of key algorithms and data structures. This module will also present a practical experience of implementing a range of algorithms and program testing and how to apply them in high performance computing. This module will prepare you for a placement in your third year by providing you with the common interview questions. Employers are looking for skilled programmers who can analyse the algorithms and make the appropriate selection of data structures for the project. During this module, you will work through a series of exercises, making use of Northumbria’s state-of-the-art computer labs and digital security lab. You will also critically engage with research outputs as part of your research-rich learning. The main element in assessment (100%) will be a final code solution assignment that will bring together all your new skills and techniques.

How will I learn on this module?

Concepts, principles and techniques will be introduced to you in lectures, and you will explore these further in guided practical exercises in laboratory/workshop sessions. You will work on these during workshops and hands-on sessions in Northumbria’s CIS building computer labs, which are fully equipped with the latest industry-standard software. You will also be provided with guided independent learning materials. When appropriate, examples will be taken from real business and industrial situations. Throughout the module you will be given the opportunity to examine and discuss the use of algorithms and data structures development in real and simulated situations.

How will I be supported academically on this module?

You will be supported by lecturers during the timetabled sessions when you will receive feedback on your work. In the laboratory/workshop sessions you will get guidance on your studies of the subject and an opportunity to ask questions arising from them. Most importantly, you will get feedback on your work and your progress, including on the practical exercises. The University’s e-Learning Portal offers remote access to all lecture and workshop/seminar materials to reinforce your learning and include model answers to exercises to help assess your own work. In addition, the university library offers support for all students through providing electronic resources.

What will I be expected to read on this module?

All modules at Northumbria include a range of reading materials that students are expected to engage with. The reading list for this module can be found at: http://readinglists.northumbria.ac.uk
(Reading List service online guide for academic staff this containing contact details for the Reading List team – http://library.northumbria.ac.uk/readinglists)

What will I be expected to achieve?

Knowledge & Understanding:
MLO1 – A critical understanding of collection classes and be able to implement data structures such as lists, queues and trees together with algorithms to process these structures (e.g. searching and sorting)
MLO2 – A critical application of algorithm complexity and the big-O notation, including algorithms for AI and data security, and use this to select suitable data structures for a particular scenario

Intellectual / Professional skills & abilities:
MLO3 – Identify problems and select and apply effective algorithms, data structures models for their solution.
MLO4 – Demonstrate critical computational thinking for the algorithms and data structures their professional issues and relevance to everyday life.

Personal Values Attributes (Global / Cultural awareness, Ethics, Curiosity) (PVA):
MLO5 – Demonstrate critical engagement with Contemporary Algorithms research and raise awareness of ethical, social, cultural and legal issues.

How will I be assessed?

The main element of summative assessment (100%) will be a final assignment and an individual work. This will be a real-world scenario-based object-oriented programming task to explore aspects of an implementation of algorithms. This will include making an appropriate selection of data structures. You will be required to submit a code along with reflective technical report. The word limit for the reflective technical report will be 2500 words. You will receive both informative and confirmatory feedback on your assessment.
This assessment addresses Module Learning Outcomes – MLO1, MLO2, MLO3, MLO4, MLO5

There will also be formative class tests which will take place within the teaching weeks which will be week 9 and week 10.
This formative assessment addresses Module Learning Outcomes – MLO1, MLO2, MLO4
On an on-going basis you will also receive formative feedback on exercises you are required to complete.

Pre-requisite(s)

N/A

Co-requisite(s)

N/A

Module abstract

This module introduces you to the algorithms’ theory, principles and practice behind data structures. Indicative topics include introduction to algorithms, big-O notation, searching, sorting and a number of fundamental data structures, including arrays, array lists, linked lists, stacks, queues, trees, sets, hash maps, dictionary, graphs, dynamic programming and concurrent programming. These data structures are covered via the notion of Abstract Data Types, and concretely in terms of their implementation in an object-oriented framework.

Theory is followed by practical workshops where you will be introduced to applying the appropriate data structures to make your code faster and scalable and apply them to high performance computing. You will apply the acquired theoretical and practical knowledge in building a substantial software solution.

Course info

UCAS Code G407

Credits 20

Level of Study Undergraduate

Mode of Study 3 years full-time or 4 years with a placement (sandwich)/study abroad

Department Computer and Information Sciences

Location City Campus, Northumbria University

City Newcastle

Start September 2024 or September 2025

Fee Information

Module Information

All information is accurate at the time of sharing. 

Full time Courses are primarily delivered via on-campus face to face learning but could include elements of online learning. Most courses run as planned and as promoted on our website and via our marketing materials, but if there are any substantial changes (as determined by the Competition and Markets Authority) to a course or there is the potential that course may be withdrawn, we will notify all affected applicants as soon as possible with advice and guidance regarding their options. It is also important to be aware that optional modules listed on course pages may be subject to change depending on uptake numbers each year.  

Contact time is subject to increase or decrease in line with possible restrictions imposed by the government or the University in the interest of maintaining the health and safety and wellbeing of students, staff, and visitors if this is deemed necessary in future.

 

Your Learning Experience

Find out about our distinctive approach at 
www.northumbria.ac.uk/exp

Admissions Terms and Conditions
northumbria.ac.uk/terms

Fees and Funding
northumbria.ac.uk/fees

Admissions Policy
northumbria.ac.uk/adpolicy

Admissions Complaints Policy
northumbria.ac.uk/complaints