Revision notes, activities, lesson plans, teaching ideas, and other resources for GCSE, A-Level, and IB Computer Science teachers and students.
UK Computing Laws
This video from Computer Science Tutor covers the main UK computing laws re...
Wireless Networking (Wi-Fi, Security, and Hardware)
This video about wireless networking includes everything that is needed for...
Network topology videos
These four excellent videos from Computer Science tutor cover the four ma...
These four videos explain the main networking protocols that students are l...
Embedded Systems video
This short video is a good over of embedded systems, covering the main poin...
Representing Text in Binary
This video clearly explains the two main ways of representing text in binar...
Types of Malware
This video explains the various types of malware including viruses and troj...
Protecting against Malware
Following on from the Types of Malware video, this video explains technique...
Video: Network Security #1
This video gives an overview of the threats to networked computer systems, ...
4.1 Computational thinking and problem-solving
Click here for recommended Cambridge A-Level Computer Science textbooks.
VisuAlgo: Linked Lists, Queues, Stacks
Linked Lists (single and doubly linked), stacks, and queues are explained on this page from Visu Algo. The site is more than a simple animation of the data structures - it allows students to interact and perform different operations (insert, remove, find, etc), then displays the pseudo-code to achieve the result while showing an animation of the data structure.
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.
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.
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.
Bubble sort and Merge sort
Using a combination of playing cards and simple computer animations, this video clearly explains the bubble sort and merge sort algorithms step by step. It also compares the speed of each algorithm of data sets of different sizes.
The second half of the video examines the complexity of the algorithms, introducing 'Big O' notation and highlighting how bubble sort's complexity is a major drawback on large lists.
This is another interactive to help students learn about sorting algorithms. They must use a set of virtual scales to test and compare the weights of 10 jars. Students must then line the jars up in the correct order at the bottom of the page. There are, of course, multiple ways to solve the problem - some more efficient than others. CS Field Guide have a similar game.
Advanced ICT: Sorting algorithms
Another page with animated examples of various sorting algorithms, including bubble sort (standard and optimised versions), merge sort, and insertion sort. The animation speed can be increased or decreased to help visualise the process.
This Harvard CS50 video tells you everything you might want to know about the binary search algorithm. The video includes a detailed step by step explanation, plus pseudo code, and an example data set.
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.
A lot of Joe James' videos feature on this site, simply because they are very clear and concise. His coverage of the insertion sort algorithm is excellent.
Harvard's CS50 Insertion sort is another good example, while TutorialsPoint has a set of clear diagrams.
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.
4.1.3 Abstract Data Types (ADT)