FAANG Interview Preparation
Learn the 18 essential coding patterns (Sliding Window, Two Pointers, DP), and how to tell which one an unfamiliar problem needs.
Lessons
Two Pointers
Introduction to Two Pointers
30 m
Reverse String
30 m
Two Sum II - Input Array Is Sorted
30 m
Valid Palindrome
30 m
Merge Sorted Array
30 m
Remove Duplicates from Sorted Array
30 m
Remove Element
30 m
Rotate Array
30 m
Squares of a Sorted Array
30 m
Is Subsequence
30 m
Valid Palindrome II
30 m
Longest Palindromic Substring
30 m
Palindromic Substrings
30 m
Encode and Decode Strings
30 m
Container With Most Water
30 m
3-Sum
30 m
3Sum Closest
30 m
4Sum
30 m
Valid Triangle Number
30 m
Move Zeroes
30 m
Sort Colors
30 m
Trapping Rain Water
30 m
Multiply Strings
30 m
Add Binary
30 m
Add Strings
30 m
Plus One
30 m
Hash Map
Two Sum
30 m
Contains Duplicate
30 m
Valid Anagram
30 m
Group Anagrams
30 m
Top K Frequent Elements
30 m
Longest Consecutive Sequence
30 m
Valid Sudoku
30 m
Majority Element
30 m
Isomorphic Strings
30 m
Word Pattern
30 m
Ransom Note
30 m
First Unique Character in a String
30 m
Roman to Integer
30 m
Sliding Window
Introduction to Sliding Window
30 m
Longest Substring Without Repeating Characters
30 m
Longest Repeating Character Replacement
30 m
Minimum Window Substring
30 m
Minimum Size Subarray Sum
30 m
Max Consecutive Ones III
30 m
Fruit Into Baskets
30 m
Contains Duplicate II
30 m
Overview (Fixed Length)
30 m
Maximum Points You Can Obtain from Cards
30 m
Maximum Sum of Distinct Subarrays With Length K
30 m
Permutation in String
30 m
Find All Anagrams in a String
30 m
Sliding Window Maximum
30 m
Intervals
Intervals Overview
30 m
Merge Intervals
30 m
Insert Interval
30 m
Non-overlapping Intervals
30 m
Meeting Rooms
30 m
Meeting Rooms II
30 m
Min Arrows to Burst Balloons
30 m
Linked List
Linked List Overview
30 m
Reverse Linked List
30 m
Middle of the Linked List
30 m
Intersection of Two Linked Lists
30 m
Merge Two Sorted Lists
30 m
Add Two Numbers
30 m
Linked List Cycle
30 m
Palindrome Linked List
30 m
Remove Nth Node From End of List
30 m
Reorder List
30 m
Swap Nodes in Pairs
30 m
LRU Cache
30 m
Find the Duplicate Number
30 m
Copy List with Random Pointer
30 m
Reverse Nodes in k-Group
30 m
Happy Number
30 m
Stack
Stack Overview
30 m
Valid Parentheses
30 m
Decode String
30 m
Longest Valid Parentheses
30 m
Overview (Monotonic Stack)
30 m
Daily Temperatures
30 m
Largest Rectangle in Histogram
30 m
Maximal Rectangle
30 m
Evaluate Reverse Polish Notation
30 m
Min Stack
30 m
Car Fleet
30 m
Next Greater Element I
30 m
Next Greater Element II
30 m
Asteroid Collision
30 m
Online Stock Span
30 m
Remove K Digits
30 m
Simplify Path
30 m
Basic Calculator II
30 m
Remove All Adjacent Duplicates in String
30 m
Binary Search
Binary Search
30 m
Search Insert Position
30 m
First Bad Version
30 m
Sqrt(x)
30 m
Valid Perfect Square
30 m
Find Peak Element
30 m
Apple Harvest (Koko Variant)
30 m
Search in Rotated Sorted Array
30 m
Find Minimum in Rotated Sorted Array
30 m
Search a 2D Matrix
30 m
Search a 2D Matrix II
30 m
Time Based Key-Value Store
30 m
Median of Two Sorted Arrays
30 m
Heap / Priority Queue
Heap Overview
30 m
Kth Largest Element in an Array
30 m
K Closest Points to Origin
30 m
Find K Closest Elements
30 m
Merge K Sorted Lists
30 m
Kth Smallest Element in a Sorted Matrix
30 m
Find Median from Data Stream
30 m
Last Stone Weight
30 m
Network Delay Time
30 m
Min Cost to Connect All Points
30 m
Swim in Rising Water
30 m
Depth-First Search
Introduction to DFS
30 m
DFS Fundamentals
30 m
Return Values in DFS
30 m
Invert Binary Tree
30 m
Maximum Depth of Binary Tree
30 m
Same Tree
30 m
Balanced Binary Tree
30 m
Subtree of Another Tree
30 m
Path Sum
30 m
Passing Values Down (State)
30 m
Validate Binary Search Tree
30 m
Kth Smallest Element in a BST
30 m
Construct Binary Tree from Preorder and Inorder Traversal
30 m
Serialize and Deserialize Binary Tree
30 m
Binary Tree Tilt
30 m
Diameter of Binary Tree
30 m
Lowest Common Ancestor of a Binary Tree
30 m
Path Sum II
30 m
Count Good Nodes in Binary Tree
30 m
Longest Univalue Path
30 m
Graphs Overview
30 m
Graph Representation: Adjacency List
30 m
Clone Graph
30 m
Graph Valid Tree
30 m
Matrices as Graphs
30 m
Flood Fill
30 m
Types of DFS (Tree Traversals)
30 m
Number of Islands
30 m
Surrounded Regions
30 m
Pacific Atlantic Water Flow
30 m
Longest Increasing Path in a Matrix
30 m
Breadth-First Search
Introduction to BFS
30 m
BFS Overview
30 m
Binary Tree Level Order Sum
30 m
Binary Tree Level Order Traversal
30 m
Symmetric Tree
30 m
Binary Tree Rightmost Node
30 m
Binary Tree Zigzag Level Order Traversal
30 m
Maximum Width of Binary Tree
30 m
Graphs Overview
30 m
Minimum Knight Moves
30 m
Rotting Oranges
30 m
01 Matrix
30 m
Bus Routes
30 m
Word Ladder
30 m
Cheapest Flights Within K Stops
30 m
Backtracking
Introduction to Backtracking
30 m
Solution Space Trees
30 m
Subsets (Power Set)
30 m
Permutations
30 m
Permutations II
30 m
Combinations
30 m
Letter Case Permutation
30 m
N-Queens
30 m
Subsets II
30 m
Combination Sum
30 m
Combination Sum II
30 m
Generate Parentheses
30 m
Word Search
30 m
Letter Combinations of a Phone Number
30 m
Palindrome Partitioning
30 m
Graphs (Topological Sort)
Ordering Dependencies (Topological Sort)
30 m
Course Schedule
30 m
Course Schedule II
30 m
Alien Dictionary
30 m
Dynamic Programming
Intro to Dynamic Programming
30 m
Solving a Question with DP
30 m
Fibonacci Number
30 m
Counting Bits
30 m
Pascal's Triangle
30 m
Min Cost Climbing Stairs
30 m
House Robber
30 m
House Robber II
30 m
House Robber III
30 m
Coin Change
30 m
Coin Change II
30 m
Maximum Product Subarray
30 m
Combination Sum IV
30 m
Partition Equal Subset Sum
30 m
Target Sum
30 m
Decode Ways
30 m
Maximal Square
30 m
Unique Paths
30 m
Unique Paths II
30 m
Minimum Path Sum
30 m
Triangle
30 m
Longest Common Subsequence
30 m
Edit Distance
30 m
Interleaving String
30 m
Distinct Subsequences
30 m
Regular Expression Matching
30 m
Wildcard Matching
30 m
Burst Balloons
30 m
Best Time to Buy and Sell Stock with Cooldown
30 m
Longest Increasing Subsequence
30 m
Word Break
30 m
Maximum Profit in Job Scheduling
30 m
Greedy Algorithms
Introduction to Greedy Algorithms
30 m
Best Time to Buy and Sell Stock
30 m
Best Time to Buy and Sell Stock II
30 m
Gas Station
30 m
Jump Game
30 m
Jump Game II
30 m
Task Scheduler
30 m
Partition Labels
30 m
Valid Parenthesis String
30 m
Hand of Straights
30 m
Integer to Roman
30 m
Trie
Introduction to Tries (Prefix Trees)
30 m
Implement Trie (Prefix Tree)
30 m
Design Add and Search Words
30 m
Word Search II
30 m
Prefix Matching
30 m
Prefix Sum
Introduction to Prefix Sums
30 m
Count Vowels in Ranges
30 m
Product of Array Except Self
30 m
Subarray Sum Equals K
30 m
Matrices
Spiral Matrix
30 m
Rotate Image
30 m
Set Matrix Zeroes
30 m
Bit Manipulation
Number of 1 Bits
30 m
Single Number
30 m
Missing Number
30 m
Reverse Bits
30 m
Sum of Two Integers
30 m
Pow(x, n)
30 m
Reverse Integer
30 m
What You Will Learn
Skills You Will Gain
Overview
The Ultimate Guide to Cracking Coding Interviews.
Stop solving random LeetCode problems. Learn the underlying patterns most interview questions are built on.
This course breaks down complex algorithms into digestible patterns like Sliding Window, Two Pointers, and Dynamic Programming. Once you know them, a problem you have never seen stops being a blank page: you can tell which pattern it calls for.
What's Included:
- Deep dives into 18 essential coding patterns
- Visual explanations for complex concepts
- Curated selection of high-yield problems
Share:
20% off every course
Register your email and we'll send you a coupon for 20% off all courses.
