Please enable JavaScript to use CodeHS

Advanced Python and AI Programming

Algorithms

Students analyze algorithm efficiency using Big O notation and implement classic search, sort, and recursive algorithms to understand their tradeoffs.

Lessons

6.1 Algorithms in Computing

  • Introduction to Algorithms
  • Algorithms in Life and Technology
  • Build an Algorithm
  • Build an Algorithm Reflection
  • Computational vs Math Algorithms
  • +1 more

6.2 Informal Runtime Analysis

  • Informal Runtime Analysis
  • Evaluating Algorithms with Statement Execution Counts
  • Evaluating Algorithms with Statement Execution Counts Submission
  • Exploration: Statement Execution Count
  • Informal Runtime Analysis Quiz
  • +2 more

6.3 Big O Notation

  • Introduction to Logarithms
  • Big O Notation
  • Big O Quiz
  • Big O Runtime Examples
  • Exploration: Fast vs Slow Searching
  • +4 more

6.4 Linear Search

  • Introduction to Linear Search
  • Searching a List of Fruit
  • Exploration: Forward and Reverse Search
  • Linear Search Quiz
  • Draft Day Search
  • +2 more

6.5 Binary Search

  • Guess the Number
  • Guess the Number Reflection
  • Introduction to Binary Search
  • Binary Search Quiz
  • Guessing Game with Binary Search
  • +3 more

6.6 Bubble Sort

  • Swapping in Python
  • Swapping Reflection
  • Fix the Date
  • Introduction to Bubble Sort
  • Sorting Books
  • +2 more

6.7 Selection Sort

  • Introduction to Selection Sort
  • Selection Sort Example
  • Selection Sort Quiz
  • Exploration: Selection Sort
  • Selecting Favorite Items

6.8 Insertion Sort

  • Introduction to Insertion Sort
  • Insertion Sort Quiz
  • Insertion Sort Example
  • Shifting Buffers
  • Sorting Cards

6.9 Recursion

  • Introduction to Recursion
  • Recursion Examples
  • Recursion Quiz
  • Recursive Towers
  • Recursive Path Finding
  • +1 more

6.10 Merge Sort

  • Introduction to Merge Sort
  • Merge Sort Quiz
  • Merge Sort Example
  • Merging Variations
  • Debugging Merge Sort

6.11 Quick Sort

  • Introduction to Quick Sort
  • Quicksort Quiz
  • Quicksort Example
  • Exploration: Quicksort Pivots
  • Quicksort Modifications

6.12 Algorithms Quiz

  • Algorithms Unit Quiz

Courses that include this module