Skip to content
Computing · Year 9

Active learning ideas

Sorting Algorithms: Merge Sort

Merge sort’s divide-and-conquer logic is abstract, so active learning turns steps into visible actions and measurable comparisons. Students build the algorithm’s structure through physical and digital tasks, which helps them internalize recursion and stability concretely rather than through abstract diagrams alone.

National Curriculum Attainment TargetsKS3: Computing - AlgorithmsKS3: Computing - Computational Thinking
25–45 minPairs → Whole Class4 activities

Activity 01

Jigsaw35 min · Small Groups

Hands-On: Physical Merge Sort Cards

Provide shuffled number cards to groups. Instruct students to divide piles recursively, sort singletons, then merge by comparing top cards. Have them record steps on worksheets and time the process for different list sizes.

Analyze how merge sort's 'divide and conquer' approach leads to greater efficiency.

Facilitation TipDuring Hands-On: Physical Merge Sort Cards, circulate and ask each pair to verbalize the split step before merging to ensure they connect the division with the base case.

What to look forPresent students with a small unsorted list (e.g., 6-8 numbers). Ask them to write down the first two steps of the divide phase of merge sort for this list, showing the sub-lists created. Check for correct splitting.

UnderstandAnalyzeEvaluateRelationship SkillsSelf-Management
Generate Complete Lesson

Activity 02

Jigsaw45 min · Pairs

Pair Programming: Code Merge Sort

Pairs write pseudocode first, then implement merge sort in Python. Test on lists of 10, 50, and 100 elements, comparing runtimes to bubble sort code. Discuss optimizations observed.

Compare the memory requirements of merge sort versus bubble sort.

Facilitation TipWhile students Pair Programming: Code Merge Sort, provide starter code with a commented merge helper so they focus on recursion and slicing, not syntax errors.

What to look forPose the question: 'Imagine you have a list of 1 million student records to sort by name. Would you choose bubble sort or merge sort? Explain your reasoning, referencing both speed and memory usage.'

UnderstandAnalyzeEvaluateRelationship SkillsSelf-Management
Generate Complete Lesson

Activity 03

Jigsaw30 min · Small Groups

Efficiency Race: Sort-Off Challenge

Teams race to sort growing lists manually with merge sort rules versus bubble sort. Use timers and stopwatches. Debrief on why merge scales better, graphing results.

Justify why merge sort is often preferred for larger datasets over simpler sorts.

Facilitation TipFor Efficiency Race: Sort-Off Challenge, enforce a strict 30-second pause between runs so students analyze one variable at a time and document their changes clearly.

What to look forGive students two small, already sorted lists of numbers. Ask them to write down the steps they would take to merge these two lists into a single sorted list, mimicking the merge step of merge sort. Review their written steps for accuracy.

UnderstandAnalyzeEvaluateRelationship SkillsSelf-Management
Generate Complete Lesson

Activity 04

Jigsaw25 min · Pairs

Visualization: Online Merge Sort Tracer

Whole class uses a tool like VisuAlgo. Students input lists, step through animations, and predict merge outcomes. Pairs annotate screenshots to explain divide depth.

Analyze how merge sort's 'divide and conquer' approach leads to greater efficiency.

Facilitation TipDirect students to the Online Merge Sort Tracer before coding to trace the same list they will sort manually, linking visual splits with code outputs.

What to look forPresent students with a small unsorted list (e.g., 6-8 numbers). Ask them to write down the first two steps of the divide phase of merge sort for this list, showing the sub-lists created. Check for correct splitting.

UnderstandAnalyzeEvaluateRelationship SkillsSelf-Management
Generate Complete Lesson

A few notes on teaching this unit

Start with concrete models like cards or counters before abstract code to prevent students from treating recursion as magic. Avoid rushing into pseudocode; let them experience uneven splits by hand first to appreciate the importance of balanced halves. Research shows that when students physically rearrange elements, their mental models of stability and time complexity become more accurate and lasting.

By the end, students will trace each phase of merge sort, justify its O(n log n) performance with real data, and compare it to simpler sorts through hands-on trials. They will articulate trade-offs between time and memory using evidence from their activities.


Watch Out for These Misconceptions

  • During Hands-On: Physical Merge Sort Cards, watch for students who believe recursion always slows things down.

    Have students time both the card sorting and a simulated bubble sort on the same list, then record the number of swaps and comparisons to show that merge sort uses far fewer comparisons despite recursion.

  • During Pair Programming: Code Merge Sort, watch for students who think merge sort uses no extra memory.

    Ask pairs to annotate their code with memory labels for the temporary arrays and to sketch a memory diagram showing the doubling of space during the merge phase.

  • During Visualization: Online Merge Sort Tracer, watch for students who equate merge sort with quicksort.

    Run the tracer twice—once on the same list with merge sort and once with quicksort—to highlight the consistent splits and stable merges versus pivot-dependent partitions.


Methods used in this brief