In this lesson, students will learn about the basics of algorithms, how they are used in programming, and how algorithms exist in their daily life outside of computer science.
Students will be able to:
In this lesson, students are exposed to the first classic Search algorithm, Linear Search. Students will learn how to code Linear Search, and understand the use and limitation of this algorithm.
Students will be able to:
In this lesson, students learn another algorithm for searching, Binary Search. Students will compare Binary Search to Linear Search, and discuss the reasons why they might need multiple ways to search a list.
Students will be able to:
In this lesson, students learn the basics of sorting. As learned in the previous lesson, Binary Search is a useful search method, but it’s limited by the fact that the lists it searches need to be sorted. In this lesson, students learn that Selection Sort is one way they can sort lists in order to effectively use Binary Search.
Students will be able to:
Student learn a new sorting method, Insertion Sort. As learned in the previous lesson, Binary Search is a useful search method, but it’s limited by the fact that the lists it searches need to be sorted. In this lesson, students learn that Insertion Sort is another way they can sort lists in order to effectively use Binary Search.
Students will be able to:
In this lesson, student learn the concept of recursion. Recursion is the idea that functions can call themselves within the function. This creates an iterative process that allows functions to iterate without using for or while loops, but only conditional statements. Students will practice using recursion, and model it with real world scenarios.
Students will be able to:
Students will learn about a third sorting algorithm, Merge sort. Merge sort uses recursion to break down lists into sublists, and sorts those sublists until the entire list is sorted. Students will compare Merge sort to other sorting methods that they’ve learned.
Students will be able to:
This lesson is a summative assessment of the unit’s learning objectives.
Assess student achievement of the learning goals of the unit.