| LeetCode |
2 |
Add Two Numbers |
Linked List |
| LeetCode |
3 |
Longest Substring Without Repeating |
String Manipulation |
| LeetCode |
5 |
Longest Palindromic Substring |
Dynamic Programming and Backtracking |
| LeetCode |
7 |
Reverse Integer |
Math |
| LeetCode |
8 |
String to Integer (atoi) |
String Manipulation |
| LeetCode |
11 |
Container With Most Water |
Array |
| LeetCode |
15 |
3Sum |
Array |
| LeetCode |
16 |
3Sum Closest |
Array |
| LeetCode |
17 |
Letter Combinations of a Phone Number |
Dynamic Programming and Backtracking |
| LeetCode |
18 |
4Sum |
Array |
| LeetCode |
19 |
Remove Nth Node From End |
Linked List |
| LeetCode |
33 |
Search in Rotated Sorted Array |
Array |
| LeetCode |
36 |
Valid Sudoku |
Matrix |
| LeetCode |
39 |
Combination Sum |
Dynamic Programming and Backtracking |
| LeetCode |
46 |
Permutations |
Dynamic Programming and Backtracking |
| LeetCode |
47 |
Permutations II |
Dynamic Programming and Backtracking |
| LeetCode |
48 |
Rotate Image |
Matrix |
| LeetCode |
49 |
Group Anagrams |
String Manipulation |
| LeetCode |
50 |
Pow(x; n) |
Math |
| LeetCode |
54 |
Spiral Matrix |
Matrix |
| LeetCode |
56 |
Merge Intervals |
Array |
| LeetCode |
62 |
Unique Paths |
Dynamic Programming and Backtracking |
| LeetCode |
64 |
Minimum Path Sum |
Dynamic Programming and Backtracking |
| LeetCode |
73 |
Set Matrix Zeroes |
Matrix |
| LeetCode |
74 |
Search a 2D Matrix |
Matrix |
| LeetCode |
75 |
Sort Colors |
Array |
| LeetCode |
78 |
Subsets |
Dynamic Programming and Backtracking |
| LeetCode |
79 |
Word Search |
Dynamic Programming and Backtracking |
| LeetCode |
90 |
Subsets II |
Dynamic Programming and Backtracking |
| LeetCode |
91 |
Decode Ways |
Dynamic Programming and Backtracking |
| LeetCode |
92 |
Reverse Linked List II |
Linked List |
| LeetCode |
98 |
Validate Binary Search Tree |
Tree |
| LeetCode |
102 |
Binary Tree Level Order Traversal |
Tree |
| LeetCode |
107 |
Binary Tree Level Order Traversal II |
Tree |
| LeetCode |
116 |
Populating Next Right Pointers in Each Node |
Tree |
| LeetCode |
127 |
Word Ladder |
String Manipulation |
| LeetCode |
130 |
Surrounded Regions |
Matrix |
| LeetCode |
133 |
Clone Graph |
Graph |
| LeetCode |
134 |
Gas Station |
Array |
| LeetCode |
138 |
Copy List with Random Pointer |
Linked List |
| LeetCode |
139 |
Word Break |
Dynamic Programming and Backtracking |
| LeetCode |
142 |
Linked List Cycle II |
Linked List |
| LeetCode |
143 |
Reorder List |
Linked List |
| LeetCode |
146 |
Design LRU Cache |
Advanced Data Structure |
| LeetCode |
147 |
Insertion Sort List |
Linked List |
| LeetCode |
148 |
Sort List |
Linked List |
| LeetCode |
150 |
Evaluate Reverse Polish Notation |
Stack and Queue |
| LeetCode |
152 |
Maximum Product Subarray |
Array |
| LeetCode |
155 |
Min Stack |
Stack and Queue |
| LeetCode |
156 |
Binary Tree Upside Down |
Tree |
| LeetCode |
167 |
Two Sum II - Sorted Array |
Array |
| LeetCode |
200 |
Number of Islands |
Matrix |
| LeetCode |
207 |
Course Schedule |
Graph |
| LeetCode |
208 |
Implement Trie (Prefix Tree) |
Tree |
| LeetCode |
209 |
Minimum Size Subarray Sum |
Array |
| LeetCode |
210 |
Course Schedule II |
Graph |
| LeetCode |
211 |
Design Add and Search Words Data Structure |
String Manipulation |
| LeetCode |
215 |
Find kth Largest Element |
Heap |
| LeetCode |
221 |
Maximal Square |
Dynamic Programming and Backtracking |
| LeetCode |
230 |
Kth Smallest Element in a BST |
Tree |
| LeetCode |
235 |
Lowest Common Ancestor of a Binary Search Tree |
Tree |
| LeetCode |
236 |
Lowest Common Ancestor of a Binary Tree |
Tree |
| LeetCode |
238 |
Product of Array Except Self |
Array |
| LeetCode |
240 |
Search a 2D Matrix II |
Matrix |
| LeetCode |
250 |
Count Univalue Subtrees |
Tree |
| LeetCode |
253 |
Meeting Rooms II |
Heap |
| LeetCode |
261 |
Graph Valid Tree |
Graph |
| LeetCode |
271 |
Encode and Decode Strings |
String Manipulation |
| LeetCode |
285 |
Inorder Successor in BST |
Tree |
| LeetCode |
286 |
Walls and Gates |
Matrix |
| LeetCode |
287 |
Find the Duplicate Number |
Array |
| LeetCode |
298 |
Binary Tree Longest Consecutive Sequence |
Tree |
| LeetCode |
300 |
Longest Increasing Subsequence |
Dynamic Programming and Backtracking |
| LeetCode |
309 |
Best Time to Buy and Sell Stock with Cooldown |
Dynamic Programming and Backtracking |
| LeetCode |
322 |
Coin Change |
Dynamic Programming and Backtracking |
| LeetCode |
323 |
Number of Connected Components in an Undirected Graph |
Graph |
| LeetCode |
328 |
Odd Even Linked List |
Linked List |
| LeetCode |
347 |
Top K Frequent Elements |
Heap |
| LeetCode |
348 |
Design Tic-Tac-Toe |
Matrix |
| LeetCode |
355 |
Design Twitter |
Advanced Data Structure |
| LeetCode |
366 |
Find Leaves of Binary Tree |
Tree |
| LeetCode |
371 |
Sum of Two Integers |
Math |
| LeetCode |
398 |
Random Pick Index |
Array |
| LeetCode |
417 |
Pacific Atlantic Water Flow |
Matrix |
| LeetCode |
419 |
Battleships in a Board |
Matrix |
| LeetCode |
424 |
Longest Repeating Character Replacement |
String Manipulation |
| LeetCode |
435 |
Non-overlapping Intervals |
Array |
| LeetCode |
438 |
Find All Anagrams in a String |
String Manipulation |
| LeetCode |
451 |
Sort Characters By Frequency |
String Manipulation |
| LeetCode |
454 |
4Sum II |
Array |
| LeetCode |
470 |
Implement Rand10() Using Rand7() |
Math |
| LeetCode |
518 |
Coin Change II |
Dynamic Programming and Backtracking |
| LeetCode |
528 |
Random Pick with Weight |
Array |
| LeetCode |
542 |
01 Matrix |
Matrix |
| LeetCode |
554 |
Brick Wall |
Matrix |
| LeetCode |
567 |
Permutation in String |
String Manipulation |
| LeetCode |
621 |
Task Scheduler |
Stack and Queue |
| LeetCode |
647 |
Palindromic Substrings |
Dynamic Programming and Backtracking |
| LeetCode |
721 |
Accounts Merge |
Graph |
| LeetCode |
729 |
My Calendar I |
Advanced Data Structure |
| LeetCode |
739 |
Daily Temperatures |
Stack and Queue |
| LeetCode |
743 |
Network Delay Time |
Graph |
| LeetCode |
801 |
Minimum Swaps Sequences Increasing |
Dynamic Programming and Backtracking |
| LeetCode |
846 |
Hand of Straights |
Array |
| LeetCode |
849 |
Maximize Distance to Closest Person |
Array |
| LeetCode |
853 |
Car Fleet |
Stack and Queue |
| LeetCode |
875 |
Koko Eating Bananas |
Array |
| LeetCode |
973 |
K Closest Points to Origin |
Heap |
| LeetCode |
981 |
Time Based Key-Value Store |
Advanced Data Structure |
| LeetCode |
986 |
Interval List Intersections |
Array |
| LeetCode |
994 |
Rotting Oranges |
Matrix |
| LeetCode |
1277 |
Count Square Submatrices with All Ones |
Dynamic Programming and Backtracking |
| LeetCode |
1347 |
Minimum Number of Steps to Make Two Strings Anagram |
String Manipulation |
| LeetCode |
1358 |
Number of Substrings All Three Chars |
String Manipulation |
| LeetCode |
1448 |
Count Good Nodes in Binary Tree |
Tree |
| LeetCode |
1669 |
Merge In Between Linked Lists |
Linked List |
| LeetCode |
1717 |
Maximum Score From Removing Substrings |
Stack and Queue |
| LeetCode |
1891 |
Cutting Ribbons |
Array |
| LeetCode |
1899 |
Merge Triplets to Form Target Triplet |
Array |
| LeetCode |
1921 |
Eliminate Maximum Monsters |
Array |
| LeetCode |
2013 |
Detect Squares |
Matrix |
| LeetCode |
2043 |
Simple Bank System |
Advanced Data Structure |
| LeetCode |
2348 |
Number of Zero-Filled Subarrays |
Array |
| LeetCode |
2966 |
Divide Array Into Arrays With Max Difference |
Array |
| LeetCode |
3191 |
Minimum Operations to Make Binary Array Elements Equal to One I |
Array |
| HackerRank |
- |
Next Greater Element with Position Offset |
Stack and Queue |
| HackerRank |
- |
Find Index Combinations with Target Weight Sum |
Dynamic Programming and Backtracking |
| HackerRank |
- |
Merge and Sort Intervals |
Array |
| HackerRank |
- |
Minimum Plans to Reach Target Bandwidth |
Dynamic Programming and Backtracking |
| HackerRank |
- |
Top K Frequent Events with Order Preservation |
Heap |
| HackerRank |
- |
Max Unique Substring Length in a Session |
String Manipulation |
| HackerRank |
- |
One-Pass Removal of k-th Node from End |
Linked List |
| HackerRank |
- |
Reverse Even-Indexed Nodes and Append |
Linked List |
| Firecode |
- |
Maximum Number of Repetitions |
Array |
| Firecode |
- |
Retrieve Optimal Computation |
Dynamic Programming and Backtracking |
| Other |
- |
Two Sum V |
Array |
| Other |
- |
Distance of Nearest Cell Having 1 |
Graph |
| Interview |
- |
Hardware Build Feasibility |
Graph |
| Interview |
- |
Merge K Sorted Arrays |
Heap |
| Interview |
- |
Quick Sort Array |
Array |
| Interview |
- |
Top K Elements |
Heap |
| Interview |
- |
Longest Common Substring |
Dynamic Programming and Backtracking |
| Interview |
- |
Minimum Operations to One |
Dynamic Programming and Backtracking |
| Interview |
- |
VIP Customer Scheduler |
Heap |