Skip to content
Computing · Year 10

Active learning ideas

Bubble Sort and Insertion Sort

Active learning works for Bubble Sort and Insertion Sort because these algorithms rely on clear, repeatable steps that students can physically act out and visualize. Moving from abstract lists to hands-on manipulations helps students internalize the iterative nature of sorting, while pair programming lets them test their understanding by translating steps into code.

National Curriculum Attainment TargetsGCSE: Computing - Computational Thinking and Algorithms
20–40 minPairs → Whole Class4 activities

Activity 01

Role Play20 min · Pairs

Unplugged Activity: Physical Bubble Sort

Provide students with shuffled number cards. Instruct pairs to perform passes, swapping adjacent cards aloud while counting comparisons. After three passes, discuss how the largest cards reach the end. Extend to trace a small array on paper.

Compare the efficiency and simplicity of Bubble Sort and Insertion Sort.

Facilitation TipDuring the Physical Bubble Sort, walk the room and pause groups to ask them to count swaps aloud, ensuring they connect each swap to the algorithm’s requirement.

What to look forProvide students with a small, unsorted list of numbers (e.g., [5, 1, 4, 2, 8]). Ask them to trace the steps of Bubble Sort, showing the list's state after each comparison and swap. Then, ask them to do the same for Insertion Sort.

ApplyAnalyzeEvaluateSocial AwarenessSelf-Awareness
Generate Complete Lesson

Activity 02

Stations Rotation30 min · Small Groups

Stations Rotation: Insertion Sort Practice

Set up stations with arrays on cards: nearly sorted, reverse sorted, random. Small groups insert elements step-by-step, recording shifts. Rotate stations, then share efficiency observations as a class.

Explain the step-by-step process of how Bubble Sort arranges elements.

Facilitation TipFor the Station Rotation, set a timer so students rotate only after completing their current card sort, preventing rushed work and encouraging careful shifts.

What to look forPose this question: 'Imagine you are sorting a deck of cards that is already mostly sorted, with only a few cards out of place. Which algorithm, Bubble Sort or Insertion Sort, would likely be more efficient and why? Explain your reasoning using the concepts of passes and element shifting.'

RememberUnderstandApplyAnalyzeSelf-ManagementRelationship Skills
Generate Complete Lesson

Activity 03

Role Play40 min · Pairs

Pair Programming Challenge: Implement and Compare

Pairs code both algorithms in Python or pseudocode for given arrays. Time runs on datasets of varying sizes. Graph results and debate which performs best for specific cases.

Design a scenario where Insertion Sort might be more efficient than other simple sorts.

Facilitation TipIn the Pair Programming Challenge, require students to run their code on the same list before swapping partners, so they experience the algorithms’ outputs firsthand.

What to look forOn one side of a card, have students write down the pseudocode or a description of the main loop for Bubble Sort. On the other side, have them write down the pseudocode or a description of the main loop for Insertion Sort, highlighting the key difference in how they process the list.

ApplyAnalyzeEvaluateSocial AwarenessSelf-Awareness
Generate Complete Lesson

Activity 04

Role Play25 min · Individual

Scenario Design: Real-World Application

Individually brainstorm scenarios like library book sorting where one algorithm fits better. Pairs refine and present, justifying with step traces. Class votes and discusses.

Compare the efficiency and simplicity of Bubble Sort and Insertion Sort.

What to look forProvide students with a small, unsorted list of numbers (e.g., [5, 1, 4, 2, 8]). Ask them to trace the steps of Bubble Sort, showing the list's state after each comparison and swap. Then, ask them to do the same for Insertion Sort.

ApplyAnalyzeEvaluateSocial AwarenessSelf-Awareness
Generate Complete Lesson

A few notes on teaching this unit

Teach these algorithms by starting with the unplugged activities to build intuition, then move to code to reinforce precision. Avoid rushing to pseudocode; instead, have students annotate their own sorting traces to make the process explicit. Research shows that students grasp iteration better when they physically experience the ‘passes’ of Bubble Sort and the ‘shifts’ of Insertion Sort before coding.

Successful learning looks like students confidently tracing both algorithms step-by-step on paper and explaining why each comparison or shift happens. They should be able to compare the two algorithms’ efficiencies in small lists, justifying their choices with evidence from their own sorting attempts.


Watch Out for These Misconceptions

  • During Physical Bubble Sort, watch for students who stop after one pass and declare the list sorted.

    Pause the group after the first pass and ask them to recount swaps aloud, then challenge them to run another pass until no swaps occur, using their own observation to correct the misconception.

  • During Station Rotation: Insertion Sort Practice, watch for students who shift every element in the list regardless of order.

    Have students pause and explain why they shifted a specific element, using the rod or card model to visualize the minimal shifts needed for nearly sorted lists.

  • During Pair Programming Challenge: Implement and Compare, watch for students who dismiss these algorithms as useless due to their time complexity.

    Prompt them to run their code on small, near-sorted lists and discuss why simplicity can be valuable in practice, using runtime comparisons to shift their perspective.


Methods used in this brief