Module and Programme Catalogue

Search site

Find information on

2016/17 Undergraduate Module Catalogue

COMP2711 Algorithms and Data Structures I

10 creditsClass Size: 120

Module manager: Dr Natasha Shakhlevich
Email: N.Shakhlevich@leeds.ac.uk

Taught: Semester 1 (Sep to Jan) View Timetable

Year running 2016/17

Pre-requisites

COMP1511Introduction to Discrete Mathematics
COMP1721Object Oriented Programming

This module is not approved as a discovery module

Module summary

This module focuses on key algorithms and data structures, that form the toolkit of a modern computer specialist. There may exist several algorithms for solving the same problem, and it is important to produce the one which is efficient in terms of the computation time. Our primary goal is to identify the most efficient solutions among those available and to provide a formal justification of that choice. Practicing with classical algorithms and data structures students will learn how to combine them in order to produce efficient algorithms for solving problems. Ultimately this will serve the foundation for developing algorithm design skills, which will be advanced in the subsequent module on more advanced algorithms and data structures.

Objectives

On completion of this module, students should understand and be proficient in analysis and design of key algorithms that are fundamental to computing (searching, sorting, number conversion, goal seeking, backtracking) and in application of basic data structures (arrays, lists, stacks, and priority queues).

Learning outcomes
On completion of the year/programme students should have provided evidence of being able to:
-demonstrate a broad understanding of the concepts, information, practical competencies and techniques which are standard features in a range of aspects of the discipline;
-apply generic and subject specific intellectual qualities to standard situations outside the context in which they were originally studied;
-appreciate and employ the main methods of enquiry in the subject and critically evaluate the appropriateness of different methods of enquiry;
-use a range of techniques to initiate and undertake the analysis of data and information.


Syllabus

Principles of algorithm design: iterative algorithms, recursive algorithms, brute force, divide-and-conquer. Analysis of algorithms: time and space efficiency, worst-case analysis of algorithms, big O notation, simple recurrence relations. Searching and sorting algorithms: sequential and binary search, selection sort, insertions sort, quicksort, mergesort, heapsort. Number systems: algorithms for converting from one number system to another. Simple data structures: arrays, lists, stacks, queues, heaps.

Teaching methods

Delivery typeNumberLength hoursStudent hours
Lecture221.0022.00
Tutorial101.0010.00
Private study hours68.00
Total Contact hours32.00
Total hours (100hr per 10 credits)100.00

Private study

Taught session preparation: 18 hours
Taught session follow-up: 18 hours
Self-directed study: 7 hours
Assessment activities: 23 hours

Opportunities for Formative Feedback

Coursework and labs.

Methods of assessment


Coursework
Assessment typeNotes% of formal assessment
AssignmentProblem Sheet 110.00
AssignmentProblem Sheet 210.00
Total percentage (Assessment Coursework)20.00

Normally resits will be assessed by the same methodology as the first attempt, unless otherwise stated


Exams
Exam typeExam duration% of formal assessment
Standard exam (closed essays, MCQs etc)2 hr 00 mins80.00
Total percentage (Assessment Exams)80.00

Normally resits will be assessed by the same methodology as the first attempt, unless otherwise stated

Reading list

The reading list is available from the Library website

Last updated: 01/03/2017

Disclaimer

Browse Other Catalogues

Errors, omissions, failed links etc should be notified to the Catalogue Team.PROD

© Copyright Leeds 2019