Skip to content

Introduction to AlgorithmsActivities & Teaching Strategies

Active learning helps students grasp algorithms because efficiency is best understood through concrete, hands-on comparisons. Moving beyond abstract explanations allows students to feel the difference between a naive approach and an optimized one, making the concept memorable and meaningful.

Grade 10Computer Science3 activities15 min45 min

Learning Objectives

  1. 1Define algorithm and identify its essential characteristics: input, output, finiteness, definiteness, and effectiveness.
  2. 2Compare and contrast a set of step-by-step instructions with a formal algorithm, highlighting differences in precision and purpose.
  3. 3Analyze everyday tasks, such as making a sandwich or navigating a city, and represent them as a sequence of algorithmic steps.
  4. 4Justify the necessity of clear, unambiguous, and ordered steps for an algorithm to function correctly and achieve a desired outcome.
  5. 5Classify real-world processes as either algorithmic or non-algorithmic based on their defined characteristics.

Want a complete lesson plan with these objectives? Generate a Mission

30 min·Whole Class

Human Sorting Race

Divide the class into two teams to sort a deck of cards using different algorithms, such as Bubble Sort versus Merge Sort. Students physically move the cards while a timer runs to visualize how the number of operations increases with input size.

Prepare & details

Differentiate between an algorithm and a set of instructions.

Facilitation Tip: During the Human Sorting Race, circulate to listen for students justifying their sorting choices with phrases like 'fewer comparisons' or 'less movement.'

Setup: Standard classroom seating; students turn to a neighbor

Materials: Discussion prompt (projected or printed), Optional: recording sheet for pairs

UnderstandApplyAnalyzeSelf-AwarenessRelationship Skills
15 min·Pairs

Think-Pair-Share: The Grocery Store Path

Students individually map the most efficient route to pick up five specific items in a local grocery store. They then pair up to compare routes and discuss which 'algorithm' used the least amount of 'memory' (steps) or 'time'.

Prepare & details

Analyze how everyday tasks can be represented as algorithms.

Facilitation Tip: While students are working on The Grocery Store Path, ask pairs to explain which path they chose and how they measured its length.

Setup: Standard classroom seating; students turn to a neighbor

Materials: Discussion prompt (projected or printed), Optional: recording sheet for pairs

UnderstandApplyAnalyzeSelf-AwarenessRelationship Skills
45 min·Small Groups

Inquiry Circle: Code Golf

Small groups are given a simple task, like finding a prime number, and must compete to write the shortest and then the fastest version of the code. They present their findings to the class to explain the trade-offs between readability and speed.

Prepare & details

Justify the importance of clear and unambiguous steps in an algorithm.

Facilitation Tip: When running Code Golf, remind students that the goal is not to write the shortest code but to write code that runs fastest with large inputs.

Setup: Groups at tables with access to source materials

Materials: Source material collection, Inquiry cycle worksheet, Question generation protocol, Findings presentation template

AnalyzeEvaluateCreateSelf-ManagementSelf-Awareness

Teaching This Topic

Teachers should start by making efficiency tangible through physical activities before moving to code. Emphasize that optimization is about trade-offs, and that students should always ask, 'What happens if the input is 100 times larger?' Avoid rushing to formal notation; let students describe complexity in their own words first. Research shows that when students physically experience inefficiency, they better understand why certain algorithmic choices matter.

What to Expect

Students will articulate why one algorithm performs better than another using terms like time and space complexity. They will also recognize that clarity in steps matters as much as brevity, and that algorithms must be tested with realistic data sizes to reveal true efficiency.

These activities are a starting point. A full mission is the experience.

  • Complete facilitation script with teacher dialogue
  • Printable student materials, ready for class
  • Differentiation strategies for every learner
Generate a Mission

Watch Out for These Misconceptions

Common MisconceptionDuring the Human Sorting Race, watch for students who believe that sorting faster means they did the task well without analyzing the steps.

What to Teach Instead

Ask students to write down the exact steps they took and count the number of comparisons or movements they made. Then, compare these counts across teams to highlight why some approaches are more efficient regardless of speed.

Common MisconceptionDuring Code Golf, watch for students who submit the shortest code without testing it on large inputs.

What to Teach Instead

Provide a large dataset and ask students to run their code. When it takes too long, guide them to rewrite their solution using a more efficient logic, even if it means adding more lines.

Assessment Ideas

Exit Ticket

After the Human Sorting Race, have students write a short reflection on which sorting method their team used and why it was (or was not) efficient. Collect these to check if they can connect the activity to concepts like time complexity.

Quick Check

During The Grocery Store Path, present students with two different path descriptions for the same store layout. Ask them to identify which path is a better algorithm and explain their choice based on definiteness and efficiency.

Discussion Prompt

After Code Golf, facilitate a class discussion where students argue whether a conversation can be considered an algorithm. Use their arguments to assess if they can apply the characteristics of algorithms (input, output, finiteness, definiteness, effectiveness) from the Grocery Store Path activity.

Extensions & Scaffolding

  • Challenge students to optimize their code from Code Golf by adding a second sorting algorithm and comparing their runtimes using a dataset of 10,000 items.
  • For students struggling with the Human Sorting Race, provide a smaller set of numbered cards and ask them to time their sorts with a stopwatch to see the difference in speed.
  • Deeper exploration: Have students research and present on how algorithmic efficiency impacts real-world systems like GPS navigation or streaming services.

Key Vocabulary

AlgorithmA finite sequence of well-defined, computer-implementable instructions, typically to solve a class of specific problems or to perform a computation.
InputThe data or information that an algorithm receives to process.
OutputThe result or data produced by an algorithm after processing the input.
FinitenessAn algorithm must terminate after a finite number of steps for all valid inputs.
DefinitenessEach step in an algorithm must be precisely defined and unambiguous, leaving no room for interpretation.
EffectivenessEach step of an algorithm must be basic enough to be carried out, in principle, by a person using only pencil and paper.

Ready to teach Introduction to Algorithms?

Generate a full mission with everything you need

Generate a Mission