Computational Thinking, Searching & Sorting Algorithms (OCR GCSE Computer Science)

Flashcards

1/28

Enjoying Flashcards?
Tell us what you think

Cards in this collection (28)

  • Define computational thinking.

    Solving problems that can be implemented by a computer system is known as computational thinking.

  • Define abstraction.

    Abstraction is the process of removing unnecessary details of a problem to focus on the important features to implement in a solution.

  • Define decomposition.

    Decomposition is the process of breaking down a large problem into a set of smaller problems to make the problem easier to solve.

  • Define algorithmic thinking.

    Algorithmic thinking is the process of creating step-by-step instructions in order to produce a solution to a problem.

  • True or False?

    Algorithmic thinking requires the use of abstraction and decomposition.

    True.

    Algorithmic thinking requires the use of abstraction and decomposition to identify each individual step.

  • True or False?

    Following a recipe is an example of algorithmic thinking in real life.

    True.

    Following a recipe is an example of algorithmic thinking, where if the recipe is followed precisely it should lead to the desired outcome.

  • True or False?

    The London underground maps are an example of abstraction

    True.

    Travellers do not need to know the geographical layout of the routes, only that getting on at stop A will eventually transport you to stop B

  • True or False?

    Algorithmic thinking is a skill that gets easier with practise.

    True.

    Algorithmic thinking takes practise, so the more you do, the easier it will become!

  • State the three main principles of computational thinking.

    The three main principles of computational thinking are:

    • Abstraction

    • Decomposition

    • Algorithmic thinking

  • Define a searching algorithm?

    Searching algorithms are precise step-by-step instructions that a computer can follow to efficiently locate specific data in massive datasets.

  • Describe 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 the value is not there.

  • Define the term 'middle value' (midpoint).

    The middle value/midpoint is the value identified in the middle of the dataset that is being searched during a binary search.

  • What is a pre-condition for performing a binary search?

    To perform a binary search the data must be in order!

  • Describe 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.

  • State an advantage of binary search over linear search.

    Binary search is fast for large datasets.

  • State an advantage of linear search over binary search.

    Linear search works on unsorted datasets.

  • State a disadvantage of binary search.

    A disadvantage of binary search is that the dataset must be in order and it is more complex to implement than linear search.

  • State a disadvantage of linear search.

    A disadvantage of linear search is that it is slow for large datasets and inefficient, starting at the beginning each time.

  • What is the midpoint of this dataset?

    5, 14, 17, 21, 22, 28

    17

    5, 14, 17, 21, 22, 28

    midpoint = lowerbound (0) + upperbound (5) // 2

  • What is a sorting algorithm?

    Sorting algorithms are precise step-by-step instructions that a computer can follow to efficiently sort data in massive datasets.

  • Define a bubble sort?

    A bubble sort is a simple sorting algorithm that starts at the beginning of a dataset and checks values in 'pairs' and swaps them if they are not in the correct order.

  • Define the term pass (in the context of bubble sort).

    One full run of comparisons from beginning to end in a bubble sort is called a 'pass'.

  • How does a bubble sort know when to stop?

    A bubble sort is finished when there are no more swaps to make.

  • What is a merge sort?

    A merge sort is a sorting algorithm that uses the 'divide and conquer' strategy of dividing a dataset into smaller sub-datasets and merging them back together in the correct order.

  • Define the term divide (in the context of merge sort).

    Divide is splitting the dataset into individual datasets by repeatedly splitting the dataset in half during a merge sort.

  • Define the term conquer (in the context of merge sort).

    Conquer is merging pairs of sub-datasets together by comparing the first value in each dataset during a merge sort.

  • What is an insertion sort?

    The insertion sort sorts one item at a time by placing it in the correct position of an unsorted list. This process repeats until all items are in the correct position.

  • True or False?

    In an insertion sort, values can move as many places as needed.

    True.

    In an insertion sort, values in the dataset can move as many places as they need.