Introduction
  • Welcome to the Course!
  • Optional JavaScript Crash-Course (Skip ahead if you already know JavaScript!)
  • Environment Setup - Windows
  • Environment Setup - macOS
  • Obtaining a copy of the course code
  • How to run tests
  • How to get the most value from this course
Strings
  • Strings Introduction
  • Valid Palindrome (LC #125)
  • Longest Palindromic Substring (LC #5)
  • Longest Substring Without Repeating Characters - Part 1 (LC #3)
  • Longest Substring Without Repeating Characters - Part 2 (LC #3)
  • Valid Anagram (LC #242)
  • Group Anagrams (LC #49)
  • Valid Parentheses (LC #20)
Dynamic Programming
  • Dynamic Programming Introduction
  • Climbing Stairs (LC #70)
  • House Robber (LC #198)
  • Jump Game - Part 1 (LC #55)
  • Jump Game - Part 2 (LC #55)
  • Longest Increasing Subsequence - Part 1 (LC #300)
  • Longest Increasing Subsequence - Part 2 (LC #300)
  • Coin Change - Part 1 (LC #322)
  • Coin Change - Part 2 (LC #322)
  • Unique Paths (LC #62)
Arrays
  • Arrays Introduction
  • Contains Duplicate (LC #217)
  • Product of Array Except Self (LC #238)
  • Container With Most Water (LC #11)
  • Best Time to Buy and Sell Stock (LC #121)
  • Two Sum (LC #1)
  • 3Sum - Part 1 (LC #15)
  • 3Sum - Part 2 (LC #15)
  • Maximum Subarray - Part 1 (LC #53)
  • Maximum Subarray - Part 2 (LC #53)
  • Maximum Product Subarray - Part 1 (LC #152)
  • Maximum Product Subarray - Part 2 (LC #152)
  • Find Minimum in Rotated Sorted Array - Part 1 (LC #153)
  • Find Minimum in Rotated Sorted Array - Part 2 (LC #153)
  • Search in Rotated Sorted Array - Part 1 (LC #33)
  • Search in Rotated Sorted Array - Part 2 (LC #33)
Interval
  • Interval Introduction
  • Meeting Rooms (LC #252)
  • Non-overlapping Intervals (LC #435)
  • Merge Intervals (LC #56)
Matrix
  • Spiral Matrix - Part 1 (LC #54)
  • Spiral Matrix - Part 2 (LC #54)
  • Set Matrix Zeroes - Part 1 (LC #73)
  • Set Matrix Zeroes - Part 2 (LC #73)
  • Word Search (LC #79)
Linked List
  • Linked List Introduction
  • Reverse Linked List (LC #206)
  • Linked List Cycle (LC #141)
  • Remove Nth Node From End of List (LC #19)
  • Merge Two Sorted Lists (LC #21)
Trees
  • Trees Introduction
  • Number of Islands (LC #200)
  • Invert Binary Tree (LC #226)
  • Maximum Depth of Binary Tree (LC #104)
  • Binary Tree Level Order Traversal (LC #102)
  • Same Tree (LC #100)
  • Validate Binary Search Tree (LC #98)
  • Lowest Common Ancestor of a Binary Search Tree - Part 1 (LC #235)
  • Lowest Common Ancestor of a Binary Search Tree - Part 2 (LC #235)
Additional Resources
  • Congratulations!
  • Additional Resources & YouTube Channel