Teach Computing

Revision notes, activities, lesson plans, teaching ideas, and other resources for GCSE, A-Level, and IB Computer Science teachers and students.

What's New

Examples of Local Cryptocurrencies

Digital Money for Local Communities covers three examples of country-wide c...

Hash function A hash function takes arbitrary sized input data (e.g. a fil...

Cryptocurrencies vs regular currencies

What is Bitcoin and How Does it Work? is a high level overview of the Bitco...

Examples of Cryptocurrencies

Bitcoin is by far the most well known cryptocurrency. The Bitcoin website w...

Practice paper 3 exam questions

One of the drawbacks of the yearly case study is that there are no past p...

Emergency Management System Explainer Video

This short video gives an overview of some EMIS features. It includes many ...

Geographic Information Systems (GIS)

For some functionality, an EMIS may also be connected to a GIS (Geographic ...

Programming languages - from Scratch to machine code

The CS Field Guide has a very comprehensive guide to different types of pro...

Assembly language simulators

There are several assembly language simulators available for use online. Si...

Resources discount offer

3.1 Fundamentals of Algorithms

Lesson resources

Algorithms & Programming game
Algorithms & Programming revision game
Recommended GCSE Computer Science textbooks
AQA Computer Science textbooks

3.1.3 Searching algorithms

Searching and sorting

Algorithms - Searching and Sorting

CS Field Guide has an extremely comprehensive page about searching and sorting algorithms, including clear explanations, animated examples, and interactives. It covers algorithm efficiency and cost.


Updated: 2017-01-23
Searching and sorting

Searching game

The Searching Boxes game from the CS Field Guide makes for a good lesson starter and can help students understand the need for different searching algorithms. Once they have tried part 1, students could try Searching Boxes Part 2 and try to devise a better search algorithm.


Updated: 2017-01-23

3.1.4 Sorting algorithms

Sorting algorithms

VisuAlgo: Sorting Algorithms

Visu Algo is another site which offers animated visualizations of common computing algorithms. The great thing about their animated sorting algorithms is the ability to display pseudo-code next to the animation and have it run step-by-step, following each line of code as it is processed. Really useful for helping students better understand code.


Updated: 2015-04-13
Sorting algorithms

Sorting Algorithms

As its name suggests, Sorting Algorithms features animations of popular sorting algorithms, including Bubble, Selection, and Insertion. The animations for each sorting method are played side by side, allowing a direct comparison. The great thing about this site is that students can select the state of the starting data (reversed, random, almost sorted, etc) as well as its size - this is perfect for helping students compare the efficiency of the algorithms and understanding that there is no generic "best" algorithm for all circumstances.


Updated: 2015-04-13
Bubble sort algorithm

Bubble Sort algorithm

This Bubble Sort video does exactly as its name suggests - explaining the algorithm clearing with the aid of diagrams. Although it is labelled as "Java", it is relevant to all computer science students.

There is also a good explanation of the algorithm (including why it is very inefficient) plus step by step diagrams here.


Updated: 2017-01-23
Merge sort algorithm

Merge sort algorithm

Harvard's CS50 Merge sort video uses a really clear approach - numbered plastic cups which are moved around as we step through the algorithm. The same approach is used in all of their sorting algorithm videos, making it easy to compare different sorting algorithms.

Joe James' Merge sort algorithm video is also very clear.

For Merge sort in particular, step by step diagrams can be very helpful in understanding the algorithm. TutorialsPoint has a good set of diagrams, plus pseudocode.


Updated: 2017-01-23