15.4 Lookup by Technique
This index helps you find problems by technique. It focuses on uncommon or specialized algorithms and data structures; common techniques like arrays, recursion, and basic iteration are not included since they appear in nearly every problem. Links jump to the detailed explanations in Common Strategies and the Glossary.
15.4.1 Dynamic Programming
15.4.1.1 Tabulation (Bottom-Up)
Problems using Tabulation:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 5 | Longest Palindromic Substring | Medium | Dynamic Programming and Backtracking |
| LeetCode | 62 | Unique Paths | Medium | Dynamic Programming and Backtracking |
| LeetCode | 64 | Minimum Path Sum | Medium | Dynamic Programming and Backtracking |
| LeetCode | 70 | Climbing Stairs | Easy | Dynamic Programming and Backtracking |
| LeetCode | 91 | Decode Ways | Medium | Dynamic Programming and Backtracking |
| LeetCode | 118 | Pascal’s Triangle | Easy | Dynamic Programming and Backtracking |
| LeetCode | 139 | Word Break | Medium | Dynamic Programming and Backtracking |
| LeetCode | 198 | House Robber | Easy | Dynamic Programming and Backtracking |
| LeetCode | 221 | Maximal Square | Medium | Dynamic Programming and Backtracking |
| LeetCode | 256 | Paint House | Easy | Dynamic Programming and Backtracking |
| LeetCode | 300 | Longest Increasing Subsequence | Medium | Dynamic Programming and Backtracking |
| LeetCode | 309 | Best Time to Buy and Sell Stock with Cooldown | Medium | Dynamic Programming and Backtracking |
| LeetCode | 322 | Coin Change | Medium | Dynamic Programming and Backtracking |
| LeetCode | 518 | Coin Change II | Medium | Dynamic Programming and Backtracking |
| LeetCode | 647 | Palindromic Substrings | Medium | Dynamic Programming and Backtracking |
| LeetCode | 801 | Minimum Swaps Sequences Increasing | Medium | Dynamic Programming and Backtracking |
| LeetCode | 1277 | Count Square Submatrices with All Ones | Medium | Dynamic Programming and Backtracking |
| HackerRank | - | Minimum Plans to Reach Target Bandwidth | Medium | Dynamic Programming and Backtracking |
| HackerRank | - | Custom Fibonacci Sequence | Easy | Dynamic Programming and Backtracking |
| Firecode | - | Retrieve Optimal Computation | Medium | Dynamic Programming and Backtracking |
| Firecode | - | Fibonacci Sequence | Easy | Dynamic Programming and Backtracking |
| Interview | - | Longest Common Substring | Medium | Dynamic Programming and Backtracking |
| Interview | - | Minimum Operations to One | Medium | Dynamic Programming and Backtracking |
15.4.1.2 Memoization (Top-Down)
Problems using Memoization:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 70 | Climbing Stairs | Easy | Dynamic Programming and Backtracking |
| LeetCode | 91 | Decode Ways | Medium | Dynamic Programming and Backtracking |
| LeetCode | 139 | Word Break | Medium | Dynamic Programming and Backtracking |
| LeetCode | 198 | House Robber | Easy | Dynamic Programming and Backtracking |
| LeetCode | 309 | Best Time to Buy and Sell Stock with Cooldown | Medium | Dynamic Programming and Backtracking |
15.4.1.3 Unbounded Knapsack
Problems using the Unbounded Knapsack pattern:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 322 | Coin Change | Medium | Dynamic Programming and Backtracking |
| LeetCode | 518 | Coin Change II | Medium | Dynamic Programming and Backtracking |
15.4.1.4 Kadane’s Algorithm
Problems using Kadane’s Algorithm:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 53 | Maximum Subarray | Easy | Array |
| LeetCode | 152 | Maximum Product Subarray | Medium | Array |
15.4.2 Backtracking
15.4.2.1 Choose-Explore-Unchoose Pattern
Problems using the Choose-Explore-Unchoose pattern:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 17 | Letter Combinations of a Phone Number | Medium | Dynamic Programming and Backtracking |
| LeetCode | 39 | Combination Sum | Medium | Dynamic Programming and Backtracking |
| LeetCode | 46 | Permutations | Medium | Dynamic Programming and Backtracking |
| LeetCode | 47 | Permutations II | Medium | Dynamic Programming and Backtracking |
| LeetCode | 78 | Subsets | Medium | Dynamic Programming and Backtracking |
| LeetCode | 90 | Subsets II | Medium | Dynamic Programming and Backtracking |
| HackerRank | - | Find Index Combinations with Target Weight Sum | Medium | Dynamic Programming and Backtracking |
| HackerRank | - | Generate Valid Angle Bracket Sequences | Easy | Dynamic Programming and Backtracking |
15.4.2.2 Pass-by-Value Pattern
Problems using the Pass-by-Value pattern:
## *No problems using this technique yet.*
15.4.2.3 Mark-Unmark Pattern (Grid or Graph)
Problems using the Mark-Unmark pattern:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 79 | Word Search | Medium | Dynamic Programming and Backtracking |
15.4.3 Two Pointer
Problems using the Two Pointer technique:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 11 | Container With Most Water | Medium | Array |
| LeetCode | 15 | 3Sum | Medium | Array |
| LeetCode | 16 | 3Sum Closest | Medium | Array |
| LeetCode | 18 | 4Sum | Medium | Array |
| LeetCode | 19 | Remove Nth Node From End | Medium | Linked List |
| LeetCode | 26 | Remove Duplicates from Sorted Array | Easy | Array |
| LeetCode | 75 | Sort Colors | Medium | Array |
| LeetCode | 141 | Linked List Cycle | Easy | Linked List |
| LeetCode | 142 | Linked List Cycle II | Medium | Linked List |
| LeetCode | 143 | Reorder List | Medium | Linked List |
| LeetCode | 160 | Intersection of Two Linked Lists | Easy | Linked List |
| LeetCode | 167 | Two Sum II - Sorted Array | Medium | Array |
| LeetCode | 202 | Happy Number | Easy | Math |
| LeetCode | 234 | Palindrome Linked List | Easy | Linked List |
| LeetCode | 287 | Find the Duplicate Number | Medium | Array |
| LeetCode | 567 | Permutation in String | Medium | String Manipulation |
| LeetCode | 680 | Valid Palindrome II | Easy | String Manipulation |
| LeetCode | 905 | Sort Array By Parity | Easy | Array |
| LeetCode | 986 | Interval List Intersections | Medium | Array |
| LeetCode | - | Shortest Word Distance | Easy | Array |
| HackerRank | - | Check Palindrome by Filtering Non-Letters | Easy | String Manipulation |
| HackerRank | - | One-Pass Removal of k-th Node from End | Medium | Linked List |
| Other | - | Two Sum II - Boolean | Easy | Array |
| Other | - | Two Sum V | Medium | Array |
15.4.4 Sliding Window
Problems using the Sliding Window technique:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 3 | Longest Substring Without Repeating | Medium | String Manipulation |
| LeetCode | 209 | Minimum Size Subarray Sum | Medium | Array |
| LeetCode | 424 | Longest Repeating Character Replacement | Medium | String Manipulation |
| LeetCode | 438 | Find All Anagrams in a String | Medium | String Manipulation |
| LeetCode | 567 | Permutation in String | Medium | String Manipulation |
| LeetCode | 1358 | Number of Substrings All Three Chars | Medium | String Manipulation |
| HackerRank | - | Max Unique Substring Length in a Session | Medium | String Manipulation |
15.4.5 Greedy
Problems using Greedy Array strategies:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 122 | Best Time to Buy and Sell Stock II | Easy | Array |
| LeetCode | 134 | Gas Station | Medium | Array |
| LeetCode | 253 | Meeting Rooms II | Medium | Heap |
| LeetCode | 409 | Longest Palindrome | Easy | String Manipulation |
| LeetCode | 435 | Non-overlapping Intervals | Medium | Array |
| LeetCode | 621 | Task Scheduler | Medium | Stack and Queue |
| LeetCode | 846 | Hand of Straights | Medium | Array |
| LeetCode | 849 | Maximize Distance to Closest Person | Medium | Array |
| LeetCode | 1717 | Maximum Score From Removing Substrings | Medium | Stack and Queue |
| LeetCode | 1899 | Merge Triplets to Form Target Triplet | Medium | Array |
| LeetCode | 1921 | Eliminate Maximum Monsters | Medium | Array |
| LeetCode | 2966 | Divide Array Into Arrays With Max Difference | Medium | Array |
| LeetCode | 3191 | Minimum Operations to Make Binary Array Elements Equal to One I | Medium | Array |
| Firecode | - | Max Gain | Easy | Array |
15.4.6 Data Structures
This section indexes problems by the specialized data structures they use.
15.4.6.1 Stack
Problems using the Stack data structure:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 32 | Longest Valid Parentheses | Hard | Stack and Queue |
| LeetCode | 94 | Binary Tree Inorder Traversal | Easy | Tree |
| LeetCode | 144 | Binary Tree Preorder Traversal | Easy | Tree |
| LeetCode | 145 | Binary Tree Postorder Traversal | Easy | Tree |
| LeetCode | 150 | Evaluate Reverse Polish Notation | Medium | Stack and Queue |
| LeetCode | 155 | Min Stack | Medium | Stack and Queue |
| LeetCode | 232 | Implement Queue using Stacks | Easy | Stack and Queue |
| LeetCode | 739 | Daily Temperatures | Medium | Stack and Queue |
| LeetCode | 853 | Car Fleet | Medium | Stack and Queue |
| LeetCode | 1717 | Maximum Score From Removing Substrings | Medium | Stack and Queue |
| HackerRank | - | Validate Properly Nested Brackets | Easy | Stack and Queue |
| HackerRank | - | Next Greater Element with Position Offset | Medium | Stack and Queue |
| Interview | - | Lock-Free Stack Using Linked List (CAS) | Easy | Stack and Queue |
| Interview | - | Implement Stack Using Queues | Easy | Advanced Data Structure |
15.4.6.2 Queue
Problems using the Queue data structure:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 232 | Implement Queue using Stacks | Easy | Stack and Queue |
| Interview | - | Implement Stack Using Queues | Easy | Advanced Data Structure |
| Interview | - | Implement Queue | Easy | Advanced Data Structure |
| Interview | - | VIP Customer Scheduler | Medium | Heap |
15.4.6.3 Heap
Problems using the Heap (Min/Max) data structure:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 4 | Median of Two Sorted Arrays | Hard | Array |
| LeetCode | 23 | Merge k Sorted Lists | Hard | Linked List |
| LeetCode | 215 | Find kth Largest Element | Medium | Heap |
| LeetCode | 253 | Meeting Rooms II | Medium | Heap |
| LeetCode | 295 | Find Median from Data Stream | Hard | Heap |
| LeetCode | 347 | Top K Frequent Elements | Medium | Heap |
| LeetCode | 355 | Design Twitter | Medium | Advanced Data Structure |
| LeetCode | 621 | Task Scheduler | Medium | Stack and Queue |
| LeetCode | 973 | K Closest Points to Origin | Medium | Heap |
| LeetCode | 1046 | Last Stone Weight | Easy | Heap |
| HackerRank | - | Top K Frequent Events with Order Preservation | Medium | Heap |
| Interview | - | Merge K Sorted Arrays | Medium | Heap |
| Interview | - | Top K Elements | Medium | Heap |
| Interview | - | VIP Customer Scheduler | Medium | Heap |
15.4.6.4 Hash Table
Problems using the Hash Table data structure:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 1 | Two Sums I | Easy | Array |
| LeetCode | 3 | Longest Substring Without Repeating | Medium | String Manipulation |
| LeetCode | 36 | Valid Sudoku | Medium | Matrix |
| LeetCode | 49 | Group Anagrams | Medium | String Manipulation |
| LeetCode | 133 | Clone Graph | Medium | Graph |
| LeetCode | 138 | Copy List with Random Pointer | Medium | Linked List |
| LeetCode | 146 | Design LRU Cache | Medium | Advanced Data Structure |
| LeetCode | 202 | Happy Number | Easy | Math |
| LeetCode | 208 | Implement Trie (Prefix Tree) | Medium | Tree |
| LeetCode | 269 | Alien Dictionary | Hard | Graph |
| LeetCode | 347 | Top K Frequent Elements | Medium | Heap |
| LeetCode | 355 | Design Twitter | Medium | Advanced Data Structure |
| LeetCode | 383 | Ransom Note | Easy | String Manipulation |
| LeetCode | 409 | Longest Palindrome | Easy | String Manipulation |
| LeetCode | 424 | Longest Repeating Character Replacement | Medium | String Manipulation |
| LeetCode | 438 | Find All Anagrams in a String | Medium | String Manipulation |
| LeetCode | 451 | Sort Characters By Frequency | Medium | String Manipulation |
| LeetCode | 454 | 4Sum II | Medium | Array |
| LeetCode | 554 | Brick Wall | Medium | Matrix |
| LeetCode | 567 | Permutation in String | Medium | String Manipulation |
| LeetCode | 621 | Task Scheduler | Medium | Stack and Queue |
| LeetCode | 653 | Two Sum IV - BST | Easy | Tree |
| LeetCode | 705 | Design HashSet | Easy | Advanced Data Structure |
| LeetCode | 706 | Design HashMap | Easy | Advanced Data Structure |
| LeetCode | 721 | Accounts Merge | Medium | Graph |
| LeetCode | 846 | Hand of Straights | Medium | Array |
| LeetCode | 953 | Verifying an Alien Dictionary | Easy | String Manipulation |
| LeetCode | 981 | Time Based Key-Value Store | Medium | Advanced Data Structure |
| LeetCode | 1002 | Find Common Characters | Easy | Array |
| LeetCode | 1347 | Minimum Number of Steps to Make Two Strings Anagram | Medium | String Manipulation |
| LeetCode | 2013 | Detect Squares | Medium | Matrix |
| LeetCode | 2043 | Simple Bank System | Medium | Advanced Data Structure |
| HackerRank | - | Count Number Pairs | Easy | Array |
| HackerRank | - | Top K Frequent Events with Order Preservation | Medium | Heap |
| HackerRank | - | Max Unique Substring Length in a Session | Medium | String Manipulation |
| Other | - | Retrieve Elements K Times | Easy | Array |
| Interview | - | Hardware Build Feasibility | Medium | Graph |
| Interview | - | First Non-Repeated Character | Easy | String Manipulation |
15.4.6.5 Binary Search Tree
Problems using the Binary Search Tree data structure:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 230 | Kth Smallest Element in a BST | Medium | Tree |
| LeetCode | 235 | Lowest Common Ancestor of a Binary Search Tree | Medium | Tree |
| LeetCode | 285 | Inorder Successor in BST | Medium | Tree |
| LeetCode | 729 | My Calendar I | Medium | Advanced Data Structure |
15.4.6.6 Trie
Problems using the Trie data structure:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 139 | Word Break | Medium | Dynamic Programming and Backtracking |
| LeetCode | 208 | Implement Trie (Prefix Tree) | Medium | Tree |
| LeetCode | 211 | Design Add and Search Words Data Structure | Medium | String Manipulation |
15.4.7 Searching
This section indexes problems by generic array search algorithms (excluding tree and matrix search).
15.4.7.1 Binary Search
Problems using Binary Search:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 4 | Median of Two Sorted Arrays | Hard | Array |
| LeetCode | 33 | Search in Rotated Sorted Array | Medium | Array |
| LeetCode | 74 | Search a 2D Matrix | Medium | Matrix |
| LeetCode | 278 | First Bad Version | Easy | Interactive |
| LeetCode | 300 | Longest Increasing Subsequence | Medium | Dynamic Programming and Backtracking |
| LeetCode | 528 | Random Pick with Weight | Medium | Array |
| LeetCode | 704 | Binary Search | Easy | Array |
| LeetCode | 875 | Koko Eating Bananas | Medium | Array |
| LeetCode | 981 | Time Based Key-Value Store | Medium | Advanced Data Structure |
| LeetCode | 1891 | Cutting Ribbons | Medium | Array |
15.4.7.2 QuickSelect
Problems using QuickSelect for k-th element selection:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 347 | Top K Frequent Elements | Medium | Heap |
| LeetCode | 973 | K Closest Points to Origin | Medium | Heap |
15.4.8 Matrix Traversal
This section indexes matrix-specific traversal and search problems.
15.4.8.1 Matrix Traversal (General)
Problems using Matrix Traversal:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 36 | Valid Sudoku | Medium | Matrix |
| LeetCode | 54 | Spiral Matrix | Medium | Matrix |
| LeetCode | 240 | Search a 2D Matrix II | Medium | Matrix |
15.4.8.2 Matrix - Depth-First Search
Problems using DFS on Matrices:
| Platform | ID | Problem | Difficulty |
|---|---|---|---|
| LeetCode | 130 | Surrounded Regions | Medium |
| LeetCode | 200 | Number of Islands | Medium |
| LeetCode | 417 | Pacific Atlantic Water Flow | Medium |
| LeetCode | 419 | Battleships in a Board | Medium |
15.4.8.3 Matrix - Breadth-First Search
Problems using BFS on Matrices:
| Platform | ID | Problem | Difficulty |
|---|---|---|---|
| LeetCode | 130 | Surrounded Regions | Medium |
| LeetCode | 286 | Walls and Gates | Medium |
| LeetCode | 542 | 01 Matrix | Medium |
| LeetCode | 994 | Rotting Oranges | Medium |
15.4.9 Tree Traversal
This section indexes tree-specific traversal and search problems.
15.4.9.1 Tree - Depth-First Search
Problems using DFS on Trees:
| Platform | ID | Problem | Difficulty |
|---|---|---|---|
| LeetCode | 94 | Binary Tree Inorder Traversal | Easy |
| LeetCode | 98 | Validate Binary Search Tree | Medium |
| LeetCode | 110 | Balanced Binary Tree | Easy |
| LeetCode | 111 | Minimum Depth of Binary Tree | Easy |
| LeetCode | 112 | Path Sum | Easy |
| LeetCode | 144 | Binary Tree Preorder Traversal | Easy |
| LeetCode | 145 | Binary Tree Postorder Traversal | Easy |
| LeetCode | 230 | Kth Smallest Element in a BST | Medium |
| LeetCode | 235 | Lowest Common Ancestor of a Binary Search Tree | Medium |
| LeetCode | 236 | Lowest Common Ancestor of a Binary Tree | Medium |
| LeetCode | 250 | Count Univalue Subtrees | Medium |
| LeetCode | 297 | Serialize and Deserialize Binary Tree | Hard |
| LeetCode | 298 | Binary Tree Longest Consecutive Sequence | Medium |
| LeetCode | 366 | Find Leaves of Binary Tree | Medium |
| LeetCode | 543 | Diameter of Binary Tree | Easy |
| LeetCode | 572 | Subtree of Another Tree | Easy |
| LeetCode | 653 | Two Sum IV - BST | Easy |
| LeetCode | 1448 | Count Good Nodes in Binary Tree | Medium |
| HackerRank | - | Height of Binary Search Tree | Easy |
15.4.9.2 Tree - Pre-Order Traversal
Problems using Pre-Order Traversal:
| Platform | ID | Problem | Difficulty |
|---|---|---|---|
| LeetCode | 144 | Binary Tree Preorder Traversal | Easy |
15.4.9.3 Tree - In-Order Traversal
Problems using In-Order Traversal:
| Platform | ID | Problem | Difficulty |
|---|---|---|---|
| LeetCode | 94 | Binary Tree Inorder Traversal | Easy |
| LeetCode | 230 | Kth Smallest Element in a BST | Medium |
15.4.9.4 Tree - Post-Order Traversal
Problems using Post-Order Traversal:
| Platform | ID | Problem | Difficulty |
|---|---|---|---|
| LeetCode | 145 | Binary Tree Postorder Traversal | Easy |
15.4.9.5 Tree - Breadth-First Search
Problems using BFS on Trees:
| Platform | ID | Problem | Difficulty |
|---|---|---|---|
| LeetCode | 102 | Binary Tree Level Order Traversal | Medium |
| LeetCode | 107 | Binary Tree Level Order Traversal II | Medium |
| LeetCode | 116 | Populating Next Right Pointers in Each Node | Medium |
15.4.10 Graph Traversal
This section indexes problems by specific graph traversal techniques, organized by graph type and algorithm.
15.4.10.1 Undirected Graph - Depth First Search
Problems using Undirected Graph DFS:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 133 | Clone Graph | Medium | Graph |
| LeetCode | 261 | Graph Valid Tree | Medium | Graph |
| LeetCode | 323 | Number of Connected Components in an Undirected Graph | Medium | Graph |
| LeetCode | 721 | Accounts Merge | Medium | Graph |
15.4.10.2 Undirected Graph - Breadth First Search
Problems using Undirected Graph BFS:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 133 | Clone Graph | Medium | Graph |
| LeetCode | 261 | Graph Valid Tree | Medium | Graph |
| LeetCode | 323 | Number of Connected Components in an Undirected Graph | Medium | Graph |
| Other | - | Distance of Nearest Cell Having 1 | Medium | Graph |
| Other | - | Graph Serialization | Unclassified | Graph |
15.4.10.3 Directed Acyclic Graph (DAG) - Depth First Search
Problems using DAG DFS for topological sorting:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 207 | Course Schedule | Medium | Graph |
| Interview | - | Hardware Build Feasibility | Medium | Graph |
15.4.10.4 Directed Acyclic Graph (DAG) - Breadth First Search
Problems using DAG BFS (Kahn’s Algorithm) for topological sorting:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 207 | Course Schedule | Medium | Graph |
| LeetCode | 210 | Course Schedule II | Medium | Graph |
| LeetCode | 269 | Alien Dictionary | Hard | Graph |
| Interview | - | Hardware Build Feasibility | Medium | Graph |
15.4.10.5 Union-Find
Problems using Union-Find:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 261 | Graph Valid Tree | Medium | Graph |
| LeetCode | 323 | Number of Connected Components in an Undirected Graph | Medium | Graph |
| LeetCode | 721 | Accounts Merge | Medium | Graph |
15.4.10.6 Cycle Detection in Undirected Graph
Problems using Cycle Detection in Undirected Graph:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 261 | Graph Valid Tree | Medium | Graph |
15.4.10.7 Cycle Detection in DAG
Problems using Cycle Detection in DAG:
## *No problems using this technique yet.*
15.4.11 Sorting
This section indexes problems by sorting algorithms and techniques.
15.4.11.2 Insertion Sort
Problems using Insertion Sort:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 147 | Insertion Sort List | Medium | Linked List |
15.4.11.3 Merge Sort
Problems using Merge Sort:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 148 | Sort List | Medium | Linked List |
15.4.11.4 Quick Sort
Problems using Quick Sort:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| Interview | - | Quick Sort Array | Medium | Array |
15.4.11.5 Topological Sort
Problems using Topological Sort:
## *No problems using this technique yet.*
15.4.12 Statistical Sampling
15.4.12.1 Rejection Sampling
Problems using Rejection Sampling:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 470 | Implement Rand10() Using Rand7() | Medium | Math |
15.4.12.2 Reservoir Sampling
Problems using Reservoir Sampling:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 398 | Random Pick Index | Medium | Array |
15.4.13 Game Theory & Optimization
15.4.13.1 MinMax
Problems using the MinMax algorithm:
| Platform | ID | Problem | Difficulty | Chapter |
|---|---|---|---|---|
| LeetCode | 121 | Best Time to Buy and Sell Stock | Easy | Array |