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

Device specifications

Device Specifications is a simple site with a huge database of smart phones...

Smart phone specs explained

This excellent site is a detailed guide to smart phone specifications, expl...

Software as a Service (Saas)

This short video gives an overview of Software as a Service (SaaS), which s...

Amazon EC2 - Elastic Cloud Server

Amazon Elastic Cloud (Amazon EC) is a good example of Infrastructure as a S...

Changeover notes

IGCSE ICT provide short but clear notes and diagrams covering the different...

CommandPoint CAD

CommandPoint by Northrop Grumman offers a range of CAD systems for various ...

CAD+911 System

TriTech Software Systems is a company that specialises in Computer Aided Di...

London Ambulance CAD failure

The 1992 London Ambulance Service CAD failure is probably the most notoriou...

Washington State 911 Failure

A 911 emergency telephone system in Washington State and Oregon shut down f...

Resources discount offer

1.1 Algorithms

Lesson resources

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

This first topic of the Edexcel IGCSE Computer Science course is a significant one, with in-depth coverage of algorithms. Students must be able to understand the applications of algorithms, be able to read and write them, and describe the output of an algorithm (dry running). They should also be able to identify and correct mistakes in algorithms, as describe the operation of common searching and sorting algorithms. There is also a significant practical aspect to this topic, as students must be able to convert an algorithm to working code, which ties in with the skills required in Topic 2.

In the context of this topic, "algorithms" may refer to pseudo-code, flowcharts, structured English, or actual program code.

1.1.1 Understanding algorithms

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
Algorithms

Algorithms in pseudocode and flow diagrams

This video from Cambridge GCSE Computing is an excellent introduction to algorithms, helping students understand what they are and how they are used. It also briefly introduces the idea of pseudo-code as a language for writing algorithms.


Updated: 2015-04-13
Lightbot game

Lightbot

Lightbot is a simple game that involves logic and basic programming techniques. Players must create a set of instructions from the list available (go forward, rotate, jump) to guide the robot to the blue squares at the end of each maze. Levels get gradually more difficult and there commands can even be grouped into functions and 'called' from different points. The game is best suited to younger players.


Updated: 2015-04-18

1.1.8 Understand standard 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
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