3.1 Fundamentals of algorithms
3.1.1 Representing algorithms
Content 
Additional information 

Understand and explain the term algorithm. 
An algorithm is a sequence of steps that can be followed to complete a task. Be aware that a computer program is an implementation of an algorithm and that an algorithm is not a computer program. 
Understand and explain the term decomposition. 
Decomposition means breaking a problem into a number of subproblems, so that each subproblem accomplishes an identifiable task, which might itself be further subdivided. 
Understand and explain the term abstraction. 
Abstraction is the process of removing unnecessary detail from a problem. 
Use a systematic approach to problem solving and algorithm creation representing those algorithms using pseudocode and flowcharts. 
Any exam question where students are given pseudocode will use the AQA standard version. However, when students are writing their own pseudocode they may do so using any form as long as the meaning is clear and unambiguous. 
Explain simple algorithms in terms of their inputs, processing and outputs. 
Students must be able to identify where inputs, processing and outputs are taking place within an algorithm. 
Determine the purpose of simple algorithms. 
Students should be able to use trace tables and visual inspection to determine how simple algorithms work and what their purpose is. 
3.1.2 Efficiency of algorithms
Content 
Additional information 

Understand that more than one algorithm can be used to solve the same problem. 

Compare the efficiency of algorithms explaining how some algorithms are more efficient than others in solving the same problem. 
Formal comparisons of algorithmic efficiency are not required. Exam questions in this area will only refer to time efficiency. 
3.1.3 Searching algorithms
Content 
Additional information 

Understand and explain how the linear search algorithm works. 
Students should know the mechanics of the algorithm. 
Understand and explain how the binary search algorithm works. 
Students should know the mechanics of the algorithm. 
Compare and contrast linear and binary search algorithms. 
Students should know the advantages and disadvantages of both algorithms. 
3.1.4 Sorting algorithms
Content 
Additional information 

Understand and explain how the merge sort algorithm works. 
Students should know the mechanics of the algorithm. 
Understand and explain how the bubble sort algorithm works. 
Students should know the mechanics of the algorithm. 
Compare and contrast merge sort and bubble sort algorithms. 
Students should know the advantages and disadvantages of both algorithms. 
Download
 Specification for first teaching in 2016 (943.0 KB)