0% found this document useful (0 votes)
2 views

1.3 searching algorithm

The document provides an overview of searching algorithms, specifically linear and binary search methods, detailing their processes and implementations. Linear search checks each value sequentially and can handle unsorted datasets, while binary search requires ordered datasets and operates by halving the search space. It also compares the advantages and disadvantages of both algorithms, highlighting their efficiency and complexity.

Uploaded by

annie.ali.blog
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

1.3 searching algorithm

The document provides an overview of searching algorithms, specifically linear and binary search methods, detailing their processes and implementations. Linear search checks each value sequentially and can handle unsorted datasets, while binary search requires ordered datasets and operates by halving the search space. It also compares the advantages and disadvantages of both algorithms, highlighting their efficiency and complexity.

Uploaded by

annie.ali.blog
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

Head to www.savemyexams.

com for more awesome resources

AQA GCSE Computer Science Your notes

Searching Algorithms
Contents
Linear Search
Binary Search
Comparing Linear Search & Binary Search Algorithms

Page 1 of 8
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources

Linear Search
Your notes
Linear Search
What is a searching algorithm?
Searching algorithms are precise step-by-step instructions that a computer can follow to efficiently
locate specific data in massive datasets
Two common searching algorithms are:
Binary search
Linear search

What is a linear search?


A linear search starts with the first value in a dataset and checks every value one at a time until all
values have been checked
A linear search can be performed even if the values are not in order

How do you perform a linear search?


Step Instruction

1 Check the first value

2 IF it is the value you are looking for


STOP!

3 ELSE move to the next value and check

4 REPEAT UNTIL you have checked all values and not found the value you are looking for

Examiner Tips and Tricks

Page 2 of 8
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources

You will not be asked to perform a linear search on a dataset in the exam, you will be expected to
understand how to do it and know the advantages and disadvantages compared to a binary search
Your notes

Worked Example
A linear search could be used instead of a binary search.
Describe the steps a linear search would follow when searching for a number that is not in the given
list [2]
Answer
Starting with the first value
Checking all values in order
Guidance
Must cover idea of checking all value AND being done in order!
"Checks each value from the beginning to the end" implies order so would get both bullet point
1&2

A linear search in python


# Identify the dataset to search, the target value and set the initial flag
data = [5, 2, 8, 1, 9]
target = 11
found = False

# Loop through each element in the data


for index in range(0,len(data) - 1):

# Check if the current element matches the target


if data[index] == target:
67
# If found, output message
found = True
print("Target found")

#If the target is not found, output a message


if found is False:
print("Target not found")

Page 3 of 8
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources

Binary Search
Your notes
Binary Search
What is a searching algorithm?
Searching algorithms are precise step-by-step instructions that a computer can follow to efficiently
locate specific data in massive datasets
Two common searching algorithms are:
Binary search
Linear search

What is a binary search?


A binary search keeps halving a dataset by comparing the target value with the middle value, going
left if smaller, right if bigger, until it finds the value or realises it's not there
To perform a binary search the data must be in order!
A binary search can be performed on datasets containing numbers or words.
Searching for a word instead of a number is the same process, except comparisons are made based on
position in the alphabet (alphabetically) instead of numerical size

How do you perform a binary search?

Page 4 of 8
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources

Example 1 - numbers
Perform a binary search to locate number 7 in the following dataset Your notes

Example 2 - words
Perform a binary search to locate the word "Rock" in the following dataset

Page 5 of 8
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources

Your notes

Examiner Tips and Tricks


If the dataset has an even number of values, the simplest way to identify the middle is to divide the
total values by 2 and use that as a middle value i.e. a dataset with 8 values, 4 would be the middle
value

Worked Example
Describe the steps a binary search will follow to look for a number in a sorted list [4]
Answer

Page 6 of 8
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources

Select / choose / pick middle number (or left/right of middle as even number) and …
…check if selected number is equal to / matches target number (not just compare)
…if searched number is larger, discard left half // if searched number is smaller, discard right half Your notes
Repeat until number found
… or remaining list is of size 1 / 0 (number not found)
Guidance
Can get a mark for bullet points 1 & 2 in one step (e.g. check if the middle value is the one we're
looking for")

A binary search in python


# Identify the dataset to search, the target value and set the initial flag
data = [2, 4, 6, 8, 10, 12, 14]
target = 8
found = False

# Set the initial low and high pointers to the beginning and end of the data
low = 0
high = len(data) - 1

# While the low pointer is less than or equal to the high pointer
while found is False and low <= high:

# Find the middle index


mid = (low + high) // 2

# Check if the target is at the middle index


if data[mid] == target:

# If the target is found, output a message


found = True
print("Target found")

# If the target is less than the middle value, search in the left half of the data
elif data[mid] > target:
high = mid - 1

# Otherwise, search in the right half of the data


else:
low = mid + 1

# If the target is not found, output a message


if found is False:
print("Target not found")

Page 7 of 8
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources

Comparing Linear Search & Binary Search Algorithms


Your notes
Comparing Linear Search & Binary Search Algorithms
What are the advantages and disadvantages of searching
algorithms?
Searching Advantages Disadvantages
Algorithm

Linear search Works on unsorted datasets Slow for large datasets


Faster (than binary) on very small Inefficient, starts at the beginning
datasets each time
Simple to understand and
implement

Binary search Fast for large datasets Dataset must be in order


Efficient for repeated searches More complex to implement

Page 8 of 8
© 2015-2025 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers

You might also like