Done | No. | Title | Difficulty | Tag | Mark |
---|---|---|---|---|---|
✅ | 1 | Two Sum | Easy | ||
✅ | 2 | Add Two Numbers | Medium | ||
✅ | 3 | Longest Substring Without Repeating Characters | Medium | ||
✅ | 4 | Median of Two Sorted Arrays | Hard | hot | |
✅ | 5 | Longest Palindromic Substring | Medium | ||
✅ | 7 | Reverse Integer | Medium | ||
⬜ | 8 | String to Integer (atoi) | Medium | ||
✅ | 10 | Regular Expression Matching | Hard | hot | |
✅ | 11 | Container With Most Water | Medium | ||
✅ | 12 | Integer to Roman | Medium | ||
✅ | 13 | Roman to Integer | Easy | ||
✅ | 14 | Longest Common Prefix | Easy | ||
✅ | 15 | 3Sum | Medium | ||
✅ | 16 | 3Sum Closest | Medium | ||
✅ | 17 | Letter Combinations of a Phone Number | Medium | ||
✅ | 19 | Remove Nth Node From End of List | Easy | ||
✅ | 20 | Valid Parentheses | Easy | ||
✅ | 21 | Merge Two Sorted Lists | Easy | ||
✅ | 22 | Generate Parentheses | Medium | ||
✅ | 23 | Merge k Sorted Lists | Hard | hot | |
✅ | 24 | Swap Nodes in Pairs | Medium | ||
✅ | 25 | Reverse Nodes in k-Group | Hard | hot | |
✅ | 26 | Remove Duplicates from Sorted Array | Easy | ||
⬜ | 28 | Implement strStr() | Medium | ||
⬜ | 29 | Divide Two Integers | Medium | ||
✅ | 30 | Substring with Concatenation of All Words | Hard | hot | |
✅ | 31 | Next Permutation | Medium | ||
✅ | 32 | Longest Valid Parentheses | Hard | hot | |
✅ | 33 | Search in Rotated Sorted Array | Medium | ||
✅ | 34 | Search for a Range | Medium | ||
✅ | 35 | Search Insert Position | Medium | ||
✅ | 36 | isValidSudoku | Medium | ||
✅ | 37 | Sudoku Solver | Hard | hot | |
✅ | 39 | Combination Sum | Medium | ||
✅ | 40 | Combination Sum II | Medium | ||
✅ | 41 | First Missing Positive | Hard | hot | |
✅ | 42 | Trapping Rain Water | Hard | hot | |
✅ | 43 | Multiply Strings | Medium | ||
✅ | 44 | Wildcard Matching | Hard | hot | |
✅ | 45 | Jump Game II | Medium | ||
✅ | 46 | Permutations | Medium | ||
✅ | 47 | Permutations II | Medium | ||
✅ | 48 | Rotate Image | Medium | ||
⬜ | 50 | Pow(x, n) | Medium | ||
✅ | 51 | N-Queens | Hard | hot | |
✅ | 52 | N-Queens II | Hard | hot | |
✅ | 53 | Maximum Subarray | Medium | ||
✅ | 54 | Spiral Matrix | Medium | ||
✅ | 55 | Jump Game | Medium | ||
✅ | 56 | Merge Intervals | Medium | ||
✅ | 60 | Permutation Sequence | Hard | hot | |
✅ | 62 | Unique Paths | Medium | ||
✅ | 63 | Unique Paths II | Medium | ||
✅ | 64 | Minimum Path Sum | Medium | ||
✅ | 65 | Valid Number | Hard | hot | |
✅ | 66 | Plus One | Easy | ||
✅ | 68 | Text Justification | Hard | hot | |
⬜ | 69 | Sqrt(x) | Medium | ||
✅ | 70 | Climbing Stairs | Easy | ||
✅ | 72 | Edit Distance | Hard | hot | |
✅ | 74 | Search a 2D Matrix | Medium | ||
✅ | 76 | Minimum Window Substring | Hard | hot | |
✅ | 77 | Combinations | Medium | ||
✅ | 78 | Subsets | Medium | ||
✅ | 79 | Word Search | Medium | ||
✅ | 81 | Search in Rotated Sorted Array II | Medium | ||
✅ | 82 | Remove Duplicates from Sorted List II | Medium | ||
✅ | 83 | Remove Duplicates from Sorted List | Easy | ||
✅ | 84 | Largest Rectangle in Histogram | Hard | hot | |
✅ | 85 | Maximal Rectangle | Hard | hot | |
✅ | 86 | Partition List | Medium | ||
✅ | 87 | Scramble String | Hard | hot | |
✅ | 88 | Merge Sorted Array | Easy | ||
✅ | 90 | Subsets II | Medium | ||
✅ | 91 | Decode Ways | Medium | ||
✅ | 92 | Reverse Linked List II | Medium | ||
✅ | 93 | Restore IP Addresses | Medium | ||
✅ | 94 | Binary Tree Inorder Traversal | Medium | ||
✅ | 95 | Unique Binary Search Trees II | Medium | ||
✅ | 97 | Interleaving String | Medium | ||
✅ | 98 | Validate Binary Search Tree | Medium | ||
✅ | 99 | Recover Binary Search Tree | Medium | ||
✅ | 100 | Same Tree | Easy | ||
✅ | 101 | Symmetric Tree | Medium | ||
✅ | 102 | Binary Tree Level Order Traversal | Easy | ||
✅ | 103 | Binary Tree Zigzag Level Order Traversal | Medium | ||
✅ | 104 | Maximum Depth of Binary Tree | Easy | ||
✅ | 105 | Construct Binary Tree from Preorder and Inorder Traversal | Medium | ||
✅ | 106 | Construct Binary Tree from Inorder and Postorder Traversal | Medium | ||
✅ | 107 | Binary Tree Level Order Traversal II | Easy | ||
✅ | 108 | Convert Sorted Array to Binary Search Tree | Medium | ||
✅ | 109 | Convert Sorted List to Binary Search Tree | Medium | ||
✅ | 110 | Balanced Binary Tree | Easy | ||
✅ | 111 | Minimum Depth of Binary Tree | Medium | ||
✅ | 112 | Path Sum | Easy | ||
✅ | 113 | Path Sum II | Medium | ||
✅ | 114 | Flatten Binary Tree to Linked List | Medium | ||
✅ | 115 | Distinct Subsequences | Hard | hot | |
✅ | 116 | Populating Next Right Pointers in Each Node | Medium | ||
✅ | 117 | Populating Next Right Pointers in Each Node II | Hard | ||
✅ | 118 | Pascal's Triangle | Medium | ||
✅ | 120 | Triangle | Medium | ||
✅ | 121 | Best Time to Buy and Sell Stock | Medium | ||
✅ | 122 | Best Time to Buy and Sell Stock II | Medium | ||
✅ | 123 | Best Time to Buy and Sell Stock III | Hard | ||
✅ | 124 | Binary Tree Maximum Path Sum | Hard | hot | |
✅ | 128 | Longest Consecutive Sequence | Medium | ||
✅ | 129 | Sum Root to Leaf Numbers | Medium | ||
✅ | 130 | Surrounded Regions | Medium | ||
✅ | 131 | Palindrome Partitioning | Medium | ||
✅ | 132 | Palindrome Partitioning II | Hard | ||
✅ | 133 | Clone Graph | Medium | ||
✅ | 135 | Candy | Hard | hot | |
✅ | 136 | Single Number | Medium | ||
✅ | 137 | Single Number II | Medium | ||
✅ | 138 | Copy List with Random Pointer | Hard | ||
✅ | 139 | Word Break | Medium | ||
✅ | 141 | Linked List Cycle | Medium | ||
✅ | 142 | Linked List Cycle II | Medium | ||
✅ | 143 | Reorder List | Medium | ||
✅ | 144 | Binary Tree Preorder Traversal | Easy | ||
✅ | 145 | Binary Tree Postorder Traversal | Easy | ||
✅ | 146 | LRU Cache | Medium | hot | |
✅ | 147 | Insertion Sort List | Medium | ||
✅ | 148 | Sort List | Medium | ||
✅ | 150 | Evaluate Reverse Polish Notation | Medium | ||
✅ | 152 | Maximum Product Subarray | Medium | ||
✅ | 153 | Find Minimum in Rotated Sorted Array | Medium | ||
✅ | 154 | Find Minimum in Rotated Sorted Array II | Hard | ||
✅ | 155 | Min Stack | Easy | ||
✅ | 160 | Intersection of Two Linked Lists | Easy | ||
⬜ | 162 | Find Peak Element | Medium | ||
✅ | 164 | Maximum Gap | Hard | ||
✅ | 169 | Majority Element | Easy | ||
✅ | 173 | Binary Search Tree Iterator | Medium | ||
✅ | 174 | Dungeon Game | Hard | ||
⬜ | 179 | Largest Number | Medium | ||
✅ | 188 | Best Time to Buy and Sell Stock IV | Hard | hot | |
✅ | 189 | Rotate Array | Medium | ||
✅ | 190 | Reverse Bits | Easy | ||
✅ | 191 | Number of 1 Bits | Easy | ||
✅ | 198 | House Robber | Easy | ||
✅ | 199 | Binary Tree Right Side View | Medium | ||
✅ | 200 | Number of Islands | Medium | ||
✅ | 206 | Reverse Linked List | Easy | ||
✅ | 208 | Implement Trie (Prefix Tree) | Medium | ||
✅ | 209 | Minimum Size Subarray Sum | Medium | ||
✅ | 211 | Add and Search Word - Data structure design | Medium | ||
✅ | 212 | Word Search II | Hard | ||
✅ | 213 | House Robber II | Medium | ||
⬜ | 214 | Shortest Palindrome | Hard | ||
✅ | 215 | Kth Largest Element in an Array | Medium | ||
✅ | 216 | Combination Sum III | Medium | ||
✅ | 217 | Contains Duplicate | Easy | ||
✅ | 218 | The Skyline Problem | Hard | ||
✅ | 221 | Maximal Square | Medium | ||
✅ | 222 | Count Complete Tree Nodes | Medium | ||
✅ | 224 | Basic Calculator | Medium | hot | |
✅ | 225 | Implement Stack using Queues | Medium | ||
✅ | 226 | Invert Binary Tree | Easy | ||
✅ | 232 | Implement Queue using Stacks | Easy | ||
⬜ | 233 | Number of Digit One | Hard | ||
✅ | 234 | Palindrome Linked List | Easy | ||
✅ | 235 | Lowest Common Ancestor of a Binary Search Tree | Medium | ||
✅ | 236 | Lowest Common Ancestor of a Binary Tree | Medium | ||
✅ | 237 | Delete Node in a Linked List | Easy | ||
✅ | 239 | Sliding Window Maximum | Hard | ||
✅ | 256 | Paint House $ | Medium | ||
✅ | 257 | Binary Tree Paths | Easy | ||
✅ | 260 | Single Number III | Medium | ||
✅ | 264 | Ugly Number II | Medium | ||
✅ | 265 | Paint House II $ | Hard | ||
✅ | 268 | Missing Number | Easy | ||
✅ | 278 | First Bad Version | Easy | ||
✅ | 279 | Perfect Squares | Medium | ||
✅ | 283 | Move Zeroes | Easy | ||
✅ | 285 | Inorder Successor in BST $ | Medium | ||
✅ | 295 | Find Median from Data Stream | Hard | hot | |
✅ | 297 | Serialize and Deserialize Binary Tree | Medium | ||
✅ | 300 | Longest Increasing Subsequence | Medium | ||
✅ | 303 | Range Sum Query - Immutable | Easy | ||
✅ | 304 | Range Sum Query 2D - Immutable | Medium | ||
✅ | 309 | Best Time to Buy and Sell Stock with Cooldown | Medium | ||
⬜ | 312 | Burst Balloons | Hard | ||
✅ | 316 | Remove Duplicate Letters | Medium | ||
✅ | 322 | Coin Change | Medium | ||
✅ | 329 | Longest Increasing Path in a Matrix | Medium | hot | |
✅ | 337 | House Robber III | Medium | ||
✅ | 338 | Counting Bits | Medium | ||
✅ | 340 | Longest Substring with At Most K Distinct Characters $ | Hard | ||
✅ | 343 | Integer Break | Medium | ||
✅ | 344 | Reverse String | Easy | ||
✅ | 347 | Top K Frequent Elements | Medium | ||
✅ | 349 | Intersection of Two Arrays | Easy | ||
✅ | 354 | Russian Doll Envelopes | Hard | ||
✅ | 363 | Max Sum of Rectangle No Larger Than K | Hard | ||
✅ | 368 | Largest Divisible Subset | Medium | ||
✅ | 370 | Range Addition $ | Medium | ||
✅ | 377 | Combination Sum IV | Medium | ||
✅ | 394 | Decode String | Medium | ||
✅ | 401 | Binary Watch | Easy | ||
✅ | 402 | Remove K Digits | Medium | ||
✅ | 403 | Frog Jump | Hard | ||
✅ | 404 | Sum of Left Leaves | Easy | ||
⬜ | 407 | Trapping Rain Water II | Hard | ||
✅ | 410 | Split Array Largest Sum | Hard | hot | |
✅ | 413 | Arithmetic Slices | Medium | ||
✅ | 416 | Partition Equal Subset Sum | Medium | ||
✅ | 426 | Convert Binary Search Tree to Sorted Doubly Linked List | Medium | ||
✅ | 437 | Path Sum III | Easy | ||
✅ | 438 | Find All Anagrams in a String | Easy | ||
✅ | 440 | K-th Smallest in Lexicographical Order | Hard | hot | |
✅ | 448 | Find All Numbers Disappeared in an Array | Easy | ||
✅ | 449 | Serialize and Deserialize BST | Medium | ||
✅ | 450 | Delete Node in a BST | Medium | ||
✅ | 451 | Sort Characters By Frequency | Medium | ||
⬜ | 459 | Repeated Substring Pattern | Easy | ||
✅ | 460 | LFU Cache | Hard | hot | |
✅ | 461 | Hamming Distance | Easy | ||
✅ | 474 | Ones and Zeroes | Medium | ||
✅ | 475 | Heaters | Medium | ||
⬜ | 488 | Zuma Game | Hard | ||
✅ | 494 | Target Sum | Medium | ||
✅ | 496 | Next Greater Element I | Easy | ||
✅ | 501 | Find Mode in Binary Search Tree | Easy | ||
✅ | 503 | Next Greater Element II | Medium | ||
✅ | 509 | Fibonacci Number | Easy | ||
✅ | 510 | Inorder Successor in BST II $ | Medium | ||
✅ | 518 | Coin Change 2 | Medium | ||
✅ | 529 | Minesweeper | Medium | ||
✅ | 538 | Convert BST to Greater Tree | Medium | ||
✅ | 542 | 01 Matrix | Medium | ||
✅ | 543 | Diameter of Binary Tree | Easy | ||
✅ | 545 | Boundary of Binary Tree | Medium | ||
✅ | 560 | Subarray Sum Equals K | Medium | ||
✅ | 567 | Permutation in String | Medium | ||
✅ | 572 | Subtree of Another Tree | Easy | ||
✅ | 581 | Shortest Unsorted Continuous Subarray | Medium | ||
✅ | 583 | Delete Operation for Two Strings | Medium | ||
✅ | 617 | Merge Two Binary Trees | Easy | ||
✅ | 622 | Design Circular Queue | Medium | ||
✅ | 641 | Design Circular Deque | Medium | ||
⬜ | 647 | 24 Game | Hard | ||
✅ | 650 | 2 Keys Keyboard | Medium | ||
✅ | 652 | Find Duplicate Subtrees | Medium | ||
✅ | 671 | Second Minimum Node In a Binary Tree | Easy | ||
✅ | 673 | Number of Longest Increasing Subsequence | Medium | ||
✅ | 701 | Insert into a Binary Search Tree | Medium | ||
✅ | 703 | Kth Largest Element in a Stream | Easy | ||
✅ | 704 | Binary Search | Easy | ||
✅ | 705 | Design HashSet | Easy | ||
✅ | 706 | Design HashMap | Easy | ||
✅ | 707 | Design Linked List | Easy | ||
✅ | 712 | Minimum ASCII Delete Sum for Two Strings | Medium | ||
✅ | 714 | Best Time to Buy and Sell Stock with Transaction Fee | Medium | ||
✅ | 716 | Max Stack $ | Hard | ||
✅ | 718 | Maximum Length of Repeated Subarray | Medium | ||
✅ | 733 | Flood Fill | Easy | ||
✅ | 739 | Daily Temperatures | Medium | ||
✅ | 740 | Delete and Earn | Medium | ||
✅ | 784 | Letter Case Permutation | Easy | ||
✅ | 801 | Minimum Swaps To Make Sequences Increasing | Medium | ||
✅ | 813 | Largest Sum of Averages | Medium | ||
✅ | 862 | Shortest Subarray with Sum at Least K | Hard | ||
✅ | 863 | All Nodes Distance K in Binary Tree | Medium | ||
✅ | 871 | Minimum Number of Refueling Stops | Hard | ||
✅ | 873 | Length of Longest Fibonacci Subsequence | Medium | ||
✅ | 879 | Profitable Schemes | Hard | ||
✅ | 889 | Construct Binary Tree from Preorder and Postorder Traversal | Medium | ||
✅ | 912 | Sort an Array | Medium | ||
✅ | 918 | Maximum Sum Circular Subarray | Medium | ||
✅ | 931 | Minimum Falling Path Sum | Medium | ||
✅ | 1008 | Construct Binary Search Tree from Preorder Traversal | Medium | ||
✅ | 1013 | Partition Array Into Three Parts With Equal Sum | Easy | ||
✅ | 1027 | Longest Arithmetic Subsequence | Medium | ||
✅ | 1028 | Recover a Tree From Preorder Traversal | Hard | ||
✅ | 1038 | Binary Search Tree to Greater Sum Tree | Medium | ||
⬜ | 1044 | Longest Duplicate Substring | Hard | ||
✅ | 1049 | Last Stone Weight II | Medium | ||
✅ | 1055 | Shortest Way to Form String $ | Medium | ||
✅ | 1081 | Smallest Subsequence of Distinct Characters | Medium | ||
✅ | 1108 | Defanging an IP Address | Easy | ||
✅ | 1143 | Longest Common Subsequence | Medium | ||
✅ | 1155 | Number of Dice Rolls With Target Sum | Medium | ||
✅ | 1206 | Design Skiplist | Hard | ||
✅ | 1277 | Count Square Submatrices with All Ones | Medium | ||
✅ | 1372 | Longest ZigZag Path in a Binary Tree | Medium | ||
✅ | 1388 | Pizza With 3n Slices | Hard | ||
✅ | 1473 | Paint House III | Hard | ||
✅ | 1670 | Design Front Middle Back Queue | Medium | ||
✅ | 1804 | Implement Trie II (Prefix Tree) | Medium | ||
✅ | 1863 | Sum of All Subset XOR Totals | Easy |
- Array
- String
- Matrix
- LinkedList
- Doubly-LinkedList
- HashTable
- Stack
- MonotonicStack
- Queue
- MonotonicQueue
- Heap(PriorityQueue)
- Tree
- BinaryTree
- BinarySearchTree
- Trie
- UnionFind