Completed
Generate All Palindromic Decompositions Of A String ("Palindrome Partitioning" on Leetcode)
Class Central Classrooms beta
YouTube videos curated by Class Central.
Classroom Contents
Coding Interview Questions - Data Structures and Algorithms
Automatically move to the next video in the Classroom when playback concludes
- 1 Generate All Palindromic Decompositions Of A String ("Palindrome Partitioning" on Leetcode)
- 2 Knuth–Morris–Pratt (KMP) Pattern Matching Substring Search - First Occurrence Of Substring
- 3 The Balanced Parentheses Problem - Classic Stack Problem ("Valid Parentheses" on Leetcode)
- 4 The Dutch National Flag Problem (The Quicksort "Band-Aid")
- 5 How To Permute A String - Generate All Permutations Of A String
- 6 Count Total Unique Binary Search Trees - The nth Catalan Number (Dynamic Programming)
- 7 Implement A Sudoku Solver - Sudoku Solving Backtracking Algorithm ("Sudoku Solver" on LeetCode)
- 8 The IP Address Decomposition Problem - Compute All Valid IP Addresses From Raw IP String
- 9 Edit Distance Between 2 Strings - The Levenshtein Distance ("Edit Distance" on LeetCode)
- 10 How To Reverse A Singly Linked List | The Ultimate Explanation (Iteratively & Recursively)
- 11 Total Occurrences Of K In A Sorted Array (Facebook Software Engineering Interview Question)
- 12 Implement An LRU Cache - The LRU Cache Eviction Policy ("LRU Cache" on LeetCode)
- 13 Search A Maze For Any Path - Depth First Search Fundamentals (Similar To "The Maze" on Leetcode)
- 14 Test If A Binary Tree Is Symmetric ("Symmetric Tree" on Leetcode)
- 15 Total Ways To Decode A String - Recursive Dynamic Programming Approach ("Decode Ways" on LeetCode)
- 16 Compute All Mnemonics For A Phone Number (Recursion/Backtracking Problem)
- 17 Find The Longest Increasing Subsequence - Dynamic Programming Fundamentals
- 18 The Change Making Problem - Fewest Coins To Make Change Dynamic Programming
- 19 Implement A Max Stack - A Stack With A .max() API (Similar To "Min Stack" on LeetCode)
- 20 Merge K Sorted Arrays - Min Heap Algorithm ("Merge K Sorted Lists" on LeetCode)
- 21 Partition To K Equal Sum Subsets From An Array of Integers - The Backtracking Approach
- 22 Compute The Next Permutation of A Numeric Sequence - Case Analysis ("Next Permutation" on Leetcode)
- 23 The N Queens Problem using Backtracking/Recursion - Explained
- 24 The 0/1 Knapsack Problem (Demystifying Dynamic Programming)
- 25 Maximum Sum Rectangle In A 2D Matrix - Kadane's Algorithm Applications (Dynamic Programming)
- 26 Fast Multiplication: From Grade-School Multiplication To Karatsuba's Algorithm
- 27 Asymptotic Notations 101: Big O, Big Omega, & Theta (Asymptotic Analysis Bootcamp)
- 28 Max Contiguous Subarray Sum - Cubic Time To Kadane's Algorithm ("Maximum Subarray" on LeetCode)
- 29 Longest Common Subsequence (2 Strings) - Dynamic Programming & Competing Subproblems
- 30 Search A 2D Sorted Matrix - Fundamentals of Search Space Reduction
- 31 Implement A Queue Using Stacks - The Queue ADT ("Implement Queue Using Stacks" on LeetCode)
- 32 The Backtracking Blueprint: The Legendary 3 Keys To Backtracking Algorithms
- 33 Minimum Window Substring: Utilizing Two Pointers & Tracking Character Mappings With A Hashtable
- 34 Implement A Binary Heap - An Efficient Implementation of The Priority Queue ADT (Abstract Data Type)
- 35 Binary Tree Level Order Traversal - Drawing The Parallel Between Trees & Graphs
- 36 Egg Dropping Problem: Dynamic Programming Fundamentals & Understanding Subproblem Decomposition
- 37 Investigating Heap Sort - Why Is Heap Sort Θ(n * log(n))? An Even Longer Really Long Answer.
- 38 All Nodes Distance K In A Binary Tree - Performing Bidirectional Search On A Tree Using A Hashtable
- 39 Reverse Polish Notation: Types of Mathematical Notations & Using A Stack To Solve RPN Expressions
- 40 Add Two Numbers Without The "+" Sign (Bit Shifting Basics)