Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Solve.hs
Module 1: Lists and Loop Patterns
Lecture 1: Introduction & Pattern Matching (16:02)
Lecture 2: Recursion Basics (9:05)
Lecture 3: Recursion with Accumulation (6:51)
Lecture 4: Tail Recursion (7:32)
Lecture 5: List Accumulation (5:46)
Lecture 6: Folds (10:56)
Lecture 7: Higher Order Function Patterns (8:13)
Lecture 8: Set Operations (5:31)
Lecture 9: Monadic Operations (9:32)
Lecture 10: State Evolution Patterns (12:07)
Lecture 11: Module Review & Practice Problems (2:48)
Module 2: Data Structures
Lecture 1: Sets & Binary Search Trees (19:58)
Lecture 2: Balancing Binary Search Trees (9:40)
Lecture 3: Maps and the Common API (13:12)
Lecture 4: Hash Sets & Hash Maps (13:09)
Lecture 5: Vectors & Arrays (14:33)
Lecture 6: Mutable Arrays & Hash Tables (14:05)
Lecture 7: Queues & Sequences (11:58)
Lecture 8: Heaps & Greedy Algorithms (19:11)
Lecture 9: Bit Sets & Binary Manipulation (12:19)
Lecture 10: JSON Types & Module Review (4:39)
Module 3: Essential Algorithms
Lecture 1: Mutual Recursion (10:40)
Lecture 2: Use It or Lose It (11:23)
Lecture 3: Memoization (12:57)
Lecture 4: Dynamic Programming (18:05)
Lecture 5: Search Problems & Depth First Search (18:01)
Lecture 6: Breadth First Search (7:41)
Lecture 7: Weighted Search & Dijkstra's Algorithm (20:26)
Lecture 8: Heuristics and the A* Algorithm (18:56)
Lecture 9: Floyd Warshall Algorithm (15:36)
Lecture 10: Max-Flow & Min-Cuts (11:41)
Lecture 11: Cycle Detection (12:15)
Teach online with
Lecture 4: Dynamic Programming
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock