Revision notes, activities, lesson plans, teaching ideas, and other resources for GCSE, A-Level, and IB Computer Science teachers and students.
Boolean logic worksheet pack
These three Boolean logic worksheets have exam style questions on logic sta...
Edexcel Computer Science (9-1)
by Ann Weidmann et al
Amazon.com | Amazon.co.uk | Book Depository
Dijkstra's algorithm video
This video is probably the best explanation of Dijkstra's algorithm for IB ...
Input-Process-Output (IPO) Model
The Input-Process-Output model is a simple topic but some students sometime...
A comprehensive review of hexadecimal. The video covers not only how to u...
Subprograms, Local Variables & Structured Programming
Subprograms are known by several different names - methods, functions, proc...
Utility Software and Models
Some students find the difference between operating system software and ut...
This video explains different types of data structures - 1 dimensional ar...
Operating System (OS) - GCSE Computer Science
A detailed overview of operating systems, starting with the general tasks t...
Click here for recommended OCR A-Level Computer Science textbooks.
(a) Analysis and design of algorithms
(b) Suitability of algorithms
(c) Efficiency of algorithms
(d) Complexity of algorithm
(e) Algorithms for data structures
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.
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.
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.
An explanation of the quick sort algorithm using playing cards and simple graphics. The best and worst case performances are considered and compared to those of the bubble sort and merge sort algorithms.
Linear search / sequential search algorithm
The linear search or sequential search algorithm is very straightforward, but this video explains it. It also makes an important point that students often forget: that is, while we can see all of the numbers on display at the same time in our examples, a computer cannot. Therefore no algorithm can make 'jumps' or 'assumptions' about the data - it must be searched item by item if it is unsorted. The video also includes pseudo code for the algorithm
Dijkstra's Algorithm for Shortest Route Problems
This is a nice little interactive and animated version of Dijkstra's Algorithm, showing the results of each step in the process.