You are viewing information for England.  Change country or region.

Algorithms, data structures and computability

The aim of this module is to help you become a computational problem solver. You’ll learn techniques to efficiently solve computational problems and apply them using the Python programming language. You’ll also learn about the limitations of computing: which problems can’t be solved algorithmically or for which no efficient solutions are known. This is the module for you if – whatever your field – you need to implement an efficient algorithm or to understand both the power and the limitations of computing. Though the focus is on the underlying ideas, you’ll also work with some mathematical concepts and notation.

Modules count towards OU qualifications

OU qualifications are modular in structure; the credits from this undergraduate module could count towards a certificate of higher education, diploma of higher education, foundation degree or honours degree.

Browse qualifications in related subjects

Module

Module code
M269
Credits

Credits

  • Credits measure the student workload required for the successful completion of a module or qualification.
  • One credit represents about 10 hours of study over the duration of the course.
  • You are awarded credits after you have successfully completed a module.
  • For example, if you study a 60-credit module and successfully pass it, you will be awarded 60 credits.
30
Study level
Across the UK, there are two parallel frameworks for higher education qualifications, the Framework for Higher Education Qualifications in England, Northern Ireland and Wales (FHEQ) and the Scottish Credit and Qualifications Framework (SCQF). These define a hierarchy of levels and describe the achievement expected at each level. The information provided shows how OU module levels correspond to these frameworks.
OU SCQF FHEQ
2 9 5
Study method
Distance Learning
Module cost
See Module registration
Entry requirements
See Entry requirements

Student Reviews

I thoroughly enjoyed this module, and felt that it did a good job covering a wide variety of subject matter....
Read more

I took the module as part of the Computer Science route of my Computing & IT and Statistics degree, having...
Read more

Request your prospectus

Explore our subjects and courses

Request your copy now

What you will study

You’ll learn to take a problem and state it precisely in order that it can be solved with a computer. In other words, you’ll learn to express the problem in a way which allows you to write an algorithm for solving it. However, not all algorithms are equally good solutions. For that reason, you’ll also learn how to analyse the speed and efficiency of algorithms and establish whether an algorithm really does what it is supposed to do. Finally, you’ll delve into the very foundations of computing. You’ll learn which problems cannot be solved with an algorithm. You’ll also learn what the limits are on the speed with which algorithms can solve many important practical problems.

The module comprises three parts:

Part 1
In the first part, you’ll learn about the basic data structures for organising data, like lists, stacks, queues, dictionaries, and sets. You’ll also learn how to analyse the complexity of an algorithm and how to measure its runtime.

Part 2
The second part covers two non-linear data structures: trees and graphs. The former can represent hierarchical data and the latter can model social, transport and other kinds of networks. The main focus of the second part are algorithmic techniques like search (brute-force, breadth-first and depth-first), divide and conquer, recursion and greedy algorithms. These are general-purpose techniques for solving a wide range of problems.

Part 3
In the third part, you’ll further develop your understanding of sets, functions, logic and proofs, using formal mathematical notation. This will be in the context of concrete applications, such as databases. At this point, you’ll also learn about the limitations of computational problem solving (non-computability and the P ≠ NP conjecture).

Vocational relevance

This module emphasises how valuable computational thinking skills are for solving a wide variety of real-world problems. Additionally, the study of computing concepts is tightly integrated with professional skills, such as testing and documenting Python programs and using Jupyter notebooks, and information literacy (in particular, searching for information and writing a brief report).

If you’re aiming to become a programmer or system builder, this module is ideal as it covers topics and skills that many leading employers in IT and computing value highly, and check in technical interviews.

Teaching and assessment

Support from your tutor

Throughout your module studies, you’ll get help and support from your assigned module tutor. They’ll help you by:

  • Marking your assignments (TMAs) and providing detailed feedback for you to improve.
  • Guiding you to additional learning resources.
  • Providing individual guidance, whether that’s for general study skills or specific module content.
  • Facilitating online discussions between your fellow students, in the dedicated module and tutor group forums.

Module tutors also run tutorials throughout the module. Where possible, recordings of online tutorials will be made available to students. While these tutorials won’t be compulsory for you to complete the module, you’re strongly encouraged to take part.

Assessment

The assessment details for this module can be found in the facts box above.

You must use the online eTMA system to submit your tutor-marked assignments (TMAs).

Future availability

Algorithms, data structures and computability (M269) starts once a year – in October (places are limited and in high demand, so enrol early).

This page describes the module that will start in October 2022.

We expect it to start for the last time in October 2024.

Regulations

As a student of The Open University, you should be aware of the content of the academic regulations which are available on our Student Policies and Regulations website.

    Course work includes:

    3 Tutor-marked assignments (TMAs)
    No examination
    No residential school


    Entry requirements

    To enrol on M269 to start in October, you must have:

    • passed Introduction to computing and IT 2 (TM112) or be enrolled on it and have started it in April.

    You need an understanding or experience of computing; an understanding and experience of programming in Python; and some knowledge of mathematics – check if you’re ready for M269, with our self-assessed quiz.

    If you’re not sure you’re ready, talk to an adviser.

    Register

    Start End England fee Register
    02 Oct 2021 Jun 2022 -

    Registration now closed

    This module is expected to start for the last time in October 2024.

    Additional Costs

    Study costs

    There may be extra costs on top of the tuition fee, such as set books, a computer and internet access.

    If your income is not more than £25,000 or you are in receipt of a qualifying benefit, you might be eligible for help with some of these costs after your module has started.

    Ways to pay for this module

    Open University Student Budget Account

    The Open University Student Budget Accounts Ltd (OUSBA) offers a convenient 'pay as you go' option to pay your OU fees, which is a secure, quick and easy way to pay. Please note that The Open University works exclusively with OUSBA and is not able to offer you credit facilities from any other provider. All credit is subject to status and proof that you can afford the repayments.

    You pay the OU through OUSBA in one of the following ways:

    • Register now, pay later – OUSBA pays your module fee direct to the OU. You then repay OUSBA interest-free and in full just before your module starts. 0% APR representative. This option could give you the extra time you may need to secure the funding to repay OUSBA.
    • Pay by instalments – OUSBA calculates your monthly fee and number of instalments based on the cost of the module you are studying. APR 5.1% representative.

    Joint loan applications

    If you feel you would be unable to obtain an OUSBA loan on your own due to credit history or affordability issues, OUSBA offers the option to apply for a joint loan application with a third party. For example, your husband, wife, partner, parent, sibling or friend. In such cases, OUSBA will be required to carry out additional affordability checks separately and/or collectively for both joint applicants who will be jointly and severally liable for loan repayments.

    As additional affordability checks are required when processing joint loan applications, unfortunately, an instant decision cannot be given. On average the processing time for a joint loan application is five working days from receipt of the required documentation.

    Read more about Open University Student Budget Accounts (OUSBA).  

    Employer sponsorship

    Studying with The Open University can boost your employability. OU courses are recognised and respected by employers for their excellence and the commitment they take to complete. They also value the skills that students learn and can apply in the workplace.

    More than one in ten OU students are sponsored by their employer, and over 30,000 employers have used the OU to develop staff so far. If the module you’ve chosen is geared towards your job or developing your career, you could approach your employer to see if they will sponsor you by paying some or all of the fees. 

    • Your employer just needs to complete a simple form to confirm how much they will be paying and we will invoice them.
    • You won’t need to get your employer to complete the form until after you’ve chosen your module.  

    Credit/debit card

    You can pay part or all of your tuition fees upfront with a debit or credit card when you register for each module. 

    We accept American Express, Mastercard, Visa and Visa Electron. 

    Mixed payments

    We know that sometimes you may want to combine payment options. For example, you may wish to pay part of your tuition fee with a debit card and pay the remainder in instalments through an Open University Student Budget Account (OUSBA).


    Please note: your permanent address/domicile will affect your fee status and therefore the fees you are charged and any financial support available to you. The fees and funding information provided here is valid for modules starting before 31 July 2022. Fees normally increase annually in line with inflation and the University's strategic approach to fees. 

    This information was provided on 26/09/2021.

    What's included

    You’ll have access to a module website, which includes:

    • a week-by-week study planner
    • course-specific materials
    • audio and video content
    • assessment details, instructions and guidance
    • online tutorial access
    • access to student and tutor group forums.

    The first two parts of the module are delivered using Jupyter notebooks that include the module’s text and the code for the examples and exercises. The first two parts are also available in PDF and HTML. You'll also be provided with one printed module book, covering the third part of the module.

    Computing requirements

    You’ll need a desktop or laptop computer with an up-to-date version of 64-bit Windows 10 (note that Windows 7 is no longer supported) or macOS and broadband internet access.

    Additional requirements for this module:

    • 5GB free disk space.

    To join in spoken conversations in tutorials we recommend a wired headset (headphones/earphones with a built-in microphone).

    Our module websites comply with web standards and any modern browser is suitable for most activities.

    Our OU Study mobile App will operate on all current, supported, versions of Android and iOS. It's not available on Kindle.

    It's also possible to access some module materials on a mobile phone, tablet device or Chromebook, however, as you may be asked to install additional software or use certain applications, you'll also require a desktop or laptop as described above.

    If you have a disability

    The OU strives to make all aspects of study accessible to everyone and this Accessibility Statement outlines what studying M269 involves. You should use this information to inform your study preparations and any discussions with us about how we can meet your needs.

    To find out more about what kind of support and adjustments might be available, contact us or visit our Disability support website.