← Back to Home

Grade 10 Lessons

Algorithms, DFS/BFS, and Waterloo CCC prep

Lessons

Python Basics Review

Variables, operators, input, conditionals, loops, lists, and functions — 8 exercises plus a bonus battle.

0/8
View Exercises →

Algorithm Review

Summation, reverse an array, remove duplicates, and find the minimum — algorithm review.

0/4
View Exercises →

Binary Trees

TreeNode class, recursive DFS, traversals, and path problems — with an interactive BST visualizer.

0/7
View Exercises →

Heaps — Priority Queues

Heap data structure, priority queues, and practical exercises using Python's heapq module.

0/6
View Exercises →

Heaps Part 2 — Top-K & CCC

Frequency counting, Top-K Frequent Elements, and CCC Bronze Count problem.

0/3
View Exercises →

Backtracking — Subsets & Combinations

Master backtracking — subsets, combination sum, and permutations.

0/6
View Exercises →

Graphs Part 1 — Grid Traversal

2D arrays, four-directions pattern, DFS flood fill and region counting, BFS shortest path.

0/9
View Exercises →

Graphs Part 2 — Adjacency Lists & Cycles

Build adjacency lists, detect cycles with DFS, and find valid course orderings.

0/7
View Exercises →

Binary Search

Halve the search space at every step — classic search, first occurrence, insert position, and range queries.

0/4
View Exercises →

Binary Search Trees

Search, insert, validate, and find the kth smallest — using the left < root < right property.

0/4
View Exercises →

Dijkstra's Algorithm

Shortest paths on weighted graphs using a min-heap priority queue — with an interactive step-by-step visualizer.

0/2
View Exercise →