https://neetcode.io/
## Array&Hashing
### easy
- [[217. Contains Duplicate]]
- [[242. Valid Anagram]]
- [[1. Two Sum]]
### medium
- [[49. Group Anagrams]]
- [[347. Top K Frequent Elements]]
- [[238. Product of Array Except Self]]
- [[36. Valid Sudoku]]
- [[271. Encode and Decode Strings]]
- [[128. Longest Consecutive Sequence]]
## Stack
### easy
- [[20. Valid Parentheses]]
### medium
- [[155. Min Stack]]
- [[150. Evaluate Reverse Polish Notation]]
- [[22. Generate Parentheses]]
- [[739. Daily Temperatures]]
- [[853. Car Fleet]]
### hard
- [[84. Largest Rectangle in Histogram]]
## Two Pointers
### easy
- [[125. Valid Palindrome]]
### medium
- [[167. Two Sum II - Input Array Is Sorted]]
- [[15. 3Sum]]
- [[11. Container With Most Water]]
### hard
- [[42. Trapping Rain Water]]
## Binary Search
### easy
- [[704. Binary Search]]
### medium
- [[74. Search a 2D Matrix]]
- [[875. Koko Eating Bananas]]
- [[153. Find Minimum in Rotated Sorted Array]]
- [[33. Search in Rotated Sorted Array]]
- [[981. Time Based Key-Value Store]]
### hard
- [[4. Median of Two Sorted Arrays]]
## Sliding Window
### easy
- [[121. Best Time to Buy and Sell Stock]]
### medium
- [[3. Longest Substring Without Repeating Characters]]
- [[424. Longest Repeating Character Replacement]]
- [[567. Permutation in String]]
### hard
- [[76. Minimum Window Substring]]
- [[239. Sliding Window Maximum]]
## Linked List
### easy
- [[206. Reverse Linked List]]
- [[21. Merge Two Sorted Lists]]
- [[141. Linked List Cycle]]
### medium
- [[143. Reorder List]]
- [[19. Remove Nth Node From End of List]]
- [[138. Copy List with Random Pointer]]
- [[2. Add Two Numbers]]
- [[287. Find the Duplicate Number]]
- [[146. LRU Cache]]
### hard
- [[23. Merge k Sorted Lists]]
- [[25. Reverse Nodes in k-Group]]
## Trees
### easy
- [[226. Invert Binary Tree]]
- [[104. Maximum Depth of Binary Tree]]
- [[543. Diameter of Binary Tree]]
- [[110. Balanced Binary Tree]]
- [[100. Same Tree]]
- [[572. Subtree of Another Tree]]
### medium
- [[235. Lowest Common Ancestor of a Binary Search Tree]]
- [[102. Binary Tree Level Order Traversal]]
- [[199. Binary Tree Right Side View]]
- [[1448. Count Good Nodes in Binary Tree]]
- [[98. Validate Binary Search Tree]]
- [[230. Kth Smallest Element in a BST]]
- [[105. Construct Binary Tree from Preorder and Inorder Traversal]]
### hard
- [[124. Binary Tree Maximum Path Sum]]
- [[297. Serialize and Deserialize Binary Tree]]
## Tries
### medium
- [[208. Implement Trie (Prefix Tree)]]
- [[211. Design Add and Search Words Data Structure]]
### hard
- [[212. Word Search II]]
## Heap / Priority Queue
### easy
- [[703. Kth Largest Element in a Stream]]
- [[1046. Last Stone Weight]]
### medium
- [[973. K Closest Points to Origin]]
- [[215. Kth Largest Element in an Array]]
- [[621. Task Scheduler]]
- [[355. Design Twitter]]
### hard
- [[295. Find Median from Data Stream]]
## Backtracking
### medium
- [[78. Subsets]]
- [[39. Combination Sum]]
- [[46. Permutations]]
- [[90. Subsets II]]
- [[40. Combination Sum II]]
- [[79. Word Search]]
- [[131. Palindrome Partitioning]]
- [[17. Letter Combinations of a Phone Number]]
### hard
- [[51. N-Queens]]
## Graphs
### medium
- [[200. Number of Islands]]
- [[133. Clone Graph]]
- [[695. Max Area of Island]]
- [[417. Pacific Atlantic Water Flow]]
- [[130. Surrounded Regions]]
- [[994. Rotting Oranges]]
- [[286. Walls and Gates]]
- [[207. Course Schedule]]
- [[210. Course Schedule II]]
- [[684. Redundant Connection]]
- [[323. Number of Connected Components in an Undirected Graph]]
- [[261. Graph Valid Tre]]
### hard
- [[127. Word Ladder]]
## 1-D Dynamic Programming
### easy
- [[70. Climbing Stairs]]
- [[746. Min Cost Climbing Stairs]]
### medium
- [[198. House Robber]]
- [[213. House Robber II]]
- [[5. Longest Palindromic Substring]]
- [[647. Palindromic Substrings]]
- [[91. Decode Ways]]
- [[322. Coin Change]]
- [[152. Maximum Product Subarray]]
- [[139. Word Break]]
- [[300. Longest Increasing Subsequence]]
- [[416. Partition Equal Subset Sum]]
## Intervals
### easy
- [[252. Meeting Rooms]]
### medium
- [[57. Insert Interval]]
- [[56. Merge Intervals]]
- [[435. Non-overlapping Intervals]]
- [[253. Meeting Rooms II]]
### hard
- [[1851. Minimum Interval to Include Each Query]]
## Greedy
### medium
- [[53. Maximum Subarray]]
- [[55. Jump Game]]
- [[45. Jump Game II]]
- [[134. Gas Station]]
- [[846. Hand of Straights]]
- [[1899. Merge Triplets to Form Target Triplet]]
- [[763. Partition Labels]]
- [[678. Valid Parenthesis String]]
## Advanced Graphs
### medium
- [[1584. Min Cost to Connect All Points]]
- [[743. Network Delay Time]]
- [[787. Cheapest Flights Within K Stops]]
### hard
- [[332. Reconstruct Itinerary]]
- [[778. Swim in Rising Water]]
- [[269. Alien Dictionary]]
## 2-D Dynamic Programming
### medium
- [[62. Unique Paths]]
- [[1143. Longest Common Subsequence]]
- [[309. Best Time to Buy and Sell Stock with Cooldown]]
- [[518. Coin Change II]]
- [[494. Target Sum]]
- [[97. Interleaving String]]
- [[72. Edit Distance]]
### hard
- [[329. Longest Increasing Path in a Matrix]]
- [[115. Distinct Subsequences]]
- [[312. Burst Balloons]]
- [[10. Regular Expression Matching]]
## Bit Manipulation
### easy
- [[136. Single Number]]
- [[191. Number of 1 Bits]]
- [[338. Counting Bits]]
- [[190. Reverse Bits]]
- [[268. Missing Number]]
### medium
- [[371. Sum of Two Integers]]
- [[7. Reverse Integer]]
## Math & Geometry
### easy
- [[202. Happy Number]]
- [[66. Plus One]]
### medium
- [[48. Rotate Image]]
- [[54. Spiral Matrix]]
- [[73. Set Matrix Zeroes]]
- [[50. Pow(x, n)]]
- [[43. Multiply Strings]]
- [[2013. Detect Squares]]