Coronavirus (Covid-19): Latest updates and information
Skip to main content Skip to navigation

CS260 Algorithms

Throughout the 2020-21 academic year, we will be adapting the way we teach and assess modules in line with government guidance on social distancing and other protective measures in response to Coronavirus. Teaching will vary between online and on-campus delivery through the year, and you should read the additional information linked on the right hand side of this page for details of how we anticipate this will work. The contact hours shown in the module information below are superseded by the additional information. You can find out more about the University’s overall response to Coronavirus at: https://warwick.ac.uk/coronavirus.

CS260-15 Algorithms

Academic year
20/21
Department
Computer Science
Level
Undergraduate Level 2
Module leader
Marcin Jurdzinski
Credit value
15
Module duration
10 weeks
Assessment
Multiple
Study location
University of Warwick main campus, Coventry
Introductory description

Data structures and algorithms are fundamental to programming and to understand computation. The purpose of this module is to provide students with a coherent introduction to techniques for using data structures and some basic algorithms, and with the tools for applying these techniques to computational problems.

Module aims

Teaching and learning methods include lectures and reading materials which describe algorithmic techniques and applications of these techniques to specific problems. Problem sheets give students opportunities to practice problem solving.

Outline syllabus

This is an indicative module outline only to give an indication of the sort of topics that may be covered. Actual sessions held may differ.

  • Basics of algorithm analysis.
  • Elementary graph algorithms.
  • Greedy algorithms.
  • Divide-and-conquer algorithms.
  • Dynamic programming.
  • Network flows.
  • NP and computational intractability.
Learning outcomes

By the end of the module, students should be able to:

  • Understanding a variety of techniques for designing algorithms and data structures, and ability to use them to solve problems.
  • Understand a variety of data structures and be able to use them effectively to use them effectively in design and implementation of algorithms.
  • Understand a variety of techniques for designing efficient algorithms, proving their correctness, and analysing their efficiency.
  • Understand some fundamental algorithmic problems and algorithms for solving them.
Indicative reading list

Please see Talis Aspire link for most up to date list.

View reading list on Talis Aspire

Subject specific skills
  • Designing algorithms
  • Using data structures in algorithm design
  • Analysing resource requirements and efficiency of algorithms
  • Proving correctness of algorithms
Transferable skills
  • Critical and creative thinking, problem solving
  • Reading, understanding, and writing for mathematics and algorithms
  • Written communication: problems, solutions, analysis

Study time

Type Required
Lectures 30 sessions of 1 hour (20%)
Seminars 10 sessions of 1 hour (7%)
Private study 110 hours (73%)
Total 150 hours
Private study description
  • Revising the material covered in the lectures and seminars.
  • Reading the recommended textbooks (relevant sections and chapters).
  • Attempting the problems from exercise sheets before weekly seminar classes.
  • Understanding the feedback given on assessed work and in weekly seminar classes.
  • Further problem solving based on revision and self-study exercises posted in the exercise sheets.
  • Further problem solving based on textbook content.

Costs

No further costs have been identified for this module.

You do not need to pass all assessment components to pass the module.

Students can register for this module without taking any assessment.

Assessment group D1
Weighting Study time
CS260 class test 20%

45 minute class test

Coursework 2 5%
Coursework 1 5%
CS260 exam 70%

~Platforms - AEP

Assessment group R
Weighting Study time
CS260 resit examination 100%

Examination

~Platforms - AEP

Feedback on assessment

Individual written feedback on each assignment.

Past exam papers for CS260

Courses

This module is Core for:

  • Year 2 of UCSA-G500 Undergraduate Computer Science
  • Year 2 of UCSA-G503 Undergraduate Computer Science MEng
  • Year 2 of UCSA-I1N1 Undergraduate Computer Science with Business Studies
  • Year 2 of UCSA-G5N1 Undergraduate Computer and Management Sciences
  • Year 2 of USTA-G302 Undergraduate Data Science
  • Year 2 of USTA-G304 Undergraduate Data Science (MSci)
  • Year 2 of UCSA-G4G1 Undergraduate Discrete Mathematics
  • Year 2 of UCSA-G4G3 Undergraduate Discrete Mathematics

This module is Optional for:

  • Year 2 of USTA-G1G3 Undergraduate Mathematics and Statistics (BSc MMathStat)
  • Year 2 of USTA-GG14 Undergraduate Mathematics and Statistics (BSc)

This module is Core option list A for:

  • Year 2 of UCSA-G5N1 Undergraduate Computer and Management Sciences

This module is Option list B for:

  • Year 2 of UCSA-GN51 Undergraduate Computer and Business Studies
  • Year 2 of UMAA-G105 Undergraduate Master of Mathematics (with Intercalated Year)
  • Year 2 of USTA-G300 Undergraduate Master of Mathematics,Operational Research,Statistics and Economics
  • Year 2 of UMAA-G100 Undergraduate Mathematics (BSc)
  • Year 2 of UMAA-G103 Undergraduate Mathematics (MMath)
  • Year 2 of UMAA-G106 Undergraduate Mathematics (MMath) with Study in Europe
  • Year 2 of UMAA-G1NC Undergraduate Mathematics and Business Studies
  • Year 2 of UMAA-G1N2 Undergraduate Mathematics and Business Studies (with Intercalated Year)
  • Year 2 of UMAA-GL11 Undergraduate Mathematics and Economics
  • Year 2 of UECA-GL12 Undergraduate Mathematics and Economics (with Intercalated Year)
  • Year 2 of UMAA-G101 Undergraduate Mathematics with Intercalated Year
  • Year 2 of USTA-Y602 Undergraduate Mathematics,Operational Research,Statistics and Economics

Further Information

Term 1

15 CATS (7.5 ECTS)

Online Material

Additional Information