0% found this document useful (0 votes)
34 views

Algorithms and Data Sctructures 2

This document provides information on the "Algorithms and Data Structures 2" module, including its rationale, aims, topics covered, learning outcomes and assessment methods. The module builds on concepts from "Algorithms and Data Structures 1" and exposes students to more advanced data structures and algorithms. Students will analyze algorithm efficiency and implement a variety of data structures and algorithms. The module is assessed through coursework (50%) and examination (50%). Formative assessment includes quizzes and programming assignments while summative assessment evaluates practical exercises, quizzes and exam questions.

Uploaded by

Laila Hassan
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
34 views

Algorithms and Data Sctructures 2

This document provides information on the "Algorithms and Data Structures 2" module, including its rationale, aims, topics covered, learning outcomes and assessment methods. The module builds on concepts from "Algorithms and Data Structures 1" and exposes students to more advanced data structures and algorithms. Students will analyze algorithm efficiency and implement a variety of data structures and algorithms. The module is assessed through coursework (50%) and examination (50%). Formative assessment includes quizzes and programming assignments while summative assessment evaluates practical exercises, quizzes and exam questions.

Uploaded by

Laila Hassan
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

BSc

Computer Science
Module Specification
Key Information
Module title Algorithms and Data Structures 2
Level 5 Credit value 15
Notional study hours
Member Institution Goldsmiths 150
and duration of course
Module lead author/
Subject matter expert
Module co-author

Rationale for the module


Algorithms and data structures are critical elements of the body of knowledge of computer science.
Knowledge of a range of algorithms and data structures will allow you to solve common programming
problems more rapidly. Within the programme, this module builds on the knowledge and skills gained
in Algorithms and Data Structures 1. You will be exposed to more complicated data structures than
those you have encountered before and will learn algorithms for manipulating them. The skills you gain
will allow you to develop more advanced software that solves more difficult problems as you encounter
them later in the programme.

Aims of the module


This module aims to provide you with detailed knowledge of several common algorithms and data
structures. You will improve your understanding of searching and sorting and learn new algorithms to
solve new problems. You will learn about a range of data structures such as trees, heaps, sets, maps,
stacks, queues and graphs. You will learn how to evaluate and describe the performance of algorithms
using big-O notation. You will learn: how to choose appropriate data structures for representing
problems, how to define and implement algorithms for manipulating them, and how to analyse the
correctness and efficiency of algorithms.

You will be expected to have mastered the material in Algorithms and Data Structures I before
attempting this module.


Topics covered in this module:
The topics listed here are an approximation of what will be covered. The topics presented may be
slightly revised to ensure currency and relevance. Students will be advised of any changes in
advance of their study.

1. Analysis of algorithms
2. Recursive algorithms
3. Comparison sorting algorithms
4. Non-comparison sorting algorithms
5. Hashing
6. Linked lists, stacks and queues
7. Linear data structures
8. Trees
9. Heaps
10. Graphs

Approximately 10-12 hours of study will be required per topic. The remaining study time is intended
for coursework and examination preparation.

Learning outcomes for the module


Students who successfully complete this module will be able to:

1. Choose and justify appropriate data structures and algorithms to solve specific problems
2. Express time and space complexities of specific algorithms using big-O notation
3. Implement standard searching, sorting and path finding algorithms
4. Implement trees and hash tables, and describe the consequences of particular implementation
choices
5. Compare and contrast recursive and iterative expressions of solutions to problems
6. Describe the abstraction of collections, relate this abstraction to linear collections, and recall
the basic operations that each abstraction supports

Assessment strategy, assessment methods


Summative and Formative Assessments
The module will contain a range of summative and formative assessments. Summative assessments
are assessments which contribute directly towards your final grade. Formative assessments do not
count directly towards your final grade. Instead, they provide you with opportunities for low stakes
practice, and will often provide some sort of feedback about your progress. For example, a practice
quiz might provide you with feedback about why a particular answer was wrong.

This module includes regular auto-graded quizzes as formative assessment, encouraging you to
engage and enabling you to gauge your progress.

Assessment Activities
The table below lists the assessment activity types you might encounter taking the module. It also
states if that type of assessment can be automatically graded. For example, multiple choice quizzes
can be automatically graded, and so can some programming assignments. It also states if that type of
assessment will be found in the summative coursework and the summative examination. More details
about the summative assessments are provided below.


Assessment activity Can it be automatically graded CW Examination
type with feedback in some cases?
Quiz X X X

Writing task X X

Programming task X X X

Pass Mark

In order to pass this module, you must achieve at least 35% in each element of summative
assessment and an overall weighted average of 40%, subject to the application of rules for
compensation. Please refer to the programme regulations for more information.

Summative Assessment Elements

As this is a module that has a significant amount of theory it is assessed as a theory-based module.
This means that the summative assessment is composed of two elements, whose weightings are listed
in the table below.

Summative Assessment Percentage of Deadline


Component final credit
Coursework 50% Mid session
Examination 50% End of session

The coursework comprises a variety of practical exercises and quizzes which in total will take up to 25
hours of study time to complete. The examination will be two hours long, and consist of written answer
and multiple choice questions.

Learning resources

The module will draw on a number of different, largely web-based, public resources as well as the
resources produced as bespoke material for this module. The standard text book for the module will
be:

Cormen, T.H., C.E. Leiserson, R.L. Rivest and C. Stein Introduction to algorithms. (MIT Press,
2009) 3rd edition [ISBN 9780262533058].

This link will take you to the ebook in the Online Library:
(https://ebookcentral.proquest.com/lib/londonww/detail.action?docID=3339142)

You might also like