- Array
- Hash Table
- Linked List
- Math
- Two Pointers
- String
- Binary Search
- Divide and Conquer
- Dynamic Programming
- Backtracking
- Stack
- Heap
- Tree
- Depth-first Search
- Breadth-first Search
- Union Find
- Graph
- Design
- Topological Sort
- Trie
- Binary Indexed Tree
- Segment Tree
- Binary Search Tree
- Recursion
- Brainteaser
- Memoization
- Queue
- Minimax
- Reservoir Sampling
# | Title | Solution | Difficulty | Note |
---|---|---|---|---|
4 | Median of Two Sorted Arrays | Python Java | Hard | |
23 | Merge k Sorted Lists | Python Java | Hard | |
53 | Maximum Subarray | Python Java | Easy | |
169 | Majority Element | Python Java | Easy | |
215 | Kth Largest Element in an Array | Python Java | Medium | |
218 | The Skyline Problem | Python Java | Hard | |
240 | Search a 2D Matrix II | Python Java | Medium | |
241 | Different Ways to Add Parentheses | Python Java | Medium | |
282 | Expression Add Operators | Python Java | Hard | |
312 | Burst Balloons | Python Java | Hard | |
315 | Count of Smaller Numbers After Self | Python Java | Hard | |
327 | Count of Range Sum | Python Java | Hard | |
493 | Reverse Pairs | Python Java | Hard | |
514 | Freedom Trail | Python Java | Hard |
# | Title | Solution | Difficulty | Note |
---|---|---|---|---|
23 | Merge k Sorted Lists | Python Java | Hard | |
215 | Kth Largest Element in an Array | Python Java | Medium | |
218 | The Skyline Problem | Python Java | Hard | |
239 | Sliding Window Maximum | Python Java | Hard | |
253 | Meeting Rooms II | Python Java | Medium | |
264 | Ugly Number II | Python Java | Medium | |
295 | Find Median from Data Stream | Python Java | Hard | |
313 | Super Ugly Number | Python Java | Medium | |
347 | Top K Frequent Elements | Python Java | Medium | |
355 | Design Twitter | Python Java | Medium | |
358 | Rearrange String k Distance Apart | Python Java | Hard | |
373 | Find K Pairs with Smallest Sums | Python Java | Medium | |
378 | Kth Smallest Element in a Sorted Matrix | Python Java | Medium | |
407 | Trapping Rain Water II | Python Java | Hard | |
451 | Sort Characters By Frequency | Python Java | Medium | |
502 | IPO | Python Java | Hard |
# | Title | Solution | Difficulty | Note |
---|---|---|---|---|
128 | Longest Consecutive Sequence | Python Java | Hard | |
130 | Surrounded Regions | Python Java | Medium | |
200 | Number of Islands | Python Java | Medium | |
261 | Graph Valid Tree | Python Java | Medium | |
305 | Number of Islands II | Python Java | Hard | |
323 | Number of Connected Components in an Undirected Graph | Python Java | Medium | |
547 | Friend Circles | Python Java | Medium |
# | Title | Solution | Difficulty | Note |
---|---|---|---|---|
133 | Clone Graph | Python Java | Medium | |
207 | Course Schedule | Python Java | Medium | |
210 | Course Schedule II | Python Java | Medium | |
261 | Graph Valid Tree | Python Java | Medium | |
269 | Alien Dictionary | Python Java | Hard | |
310 | Minimum Height Trees | Python Java | Medium | |
323 | Number of Connected Components in an Undirected Graph | Python Java | Medium | |
332 | Reconstruct Itinerary | Python Java | Medium | |
399 | Evaluate Division | Python Java | Medium | |
444 | Sequence Reconstruction | Python Java | Medium |
# | Title | Solution | Difficulty | Note |
---|---|---|---|---|
207 | Course Schedule | Python Java | Medium | |
210 | Course Schedule II | Python Java | Medium | |
269 | Alien Dictionary | Python Java | Hard | |
329 | Longest Increasing Path in a Matrix | Python Java | Hard | |
444 | Sequence Reconstruction | Python Java | Medium |
# | Title | Solution | Difficulty | Note |
---|---|---|---|---|
208 | Implement Trie (Prefix Tree) | Python Java | Medium | |
211 | Add and Search Word - Data structure design | Python Java | Medium | |
212 | Word Search II | Python Java | Hard | |
336 | Palindrome Pairs | Python Java | Hard | |
421 | Maximum XOR of Two Numbers in an Array | Python Java | Medium | |
425 | Word Squares | Python Java | Hard | |
472 | Concatenated Words | Python Java | Hard |
# | Title | Solution | Difficulty | Note |
---|---|---|---|---|
218 | The Skyline Problem | Python Java | Hard | |
307 | Range Sum Query - Mutable | Python Java | Medium | |
308 | Range Sum Query 2D - Mutable | Python Java | Hard | |
315 | Count of Smaller Numbers After Self | Python Java | Hard | |
493 | Reverse Pairs | Python Java | Hard |
# | Title | Solution | Difficulty | Note |
---|---|---|---|---|
218 | The Skyline Problem | Python Java | Hard | |
307 | Range Sum Query - Mutable | Python Java | Medium | |
308 | Range Sum Query 2D - Mutable | Python Java | Hard | |
315 | Count of Smaller Numbers After Self | Python Java | Hard | |
493 | Reverse Pairs | Python Java | Hard |
# | Title | Solution | Difficulty | Note |
---|---|---|---|---|
220 | Contains Duplicate III | Python Java | Medium | |
315 | Count of Smaller Numbers After Self | Python Java | Hard | |
327 | Count of Range Sum | Python Java | Hard | |
352 | Data Stream as Disjoint Intervals | Python Java | Hard | |
493 | Reverse Pairs | Python Java | Hard | |
530 | Minimum Absolute Difference in BST | Python Java | Easy |
# | Title | Solution | Difficulty | Note |
---|---|---|---|---|
247 | Strobogrammatic Number II | Python Java | Medium | |
248 | Strobogrammatic Number III | Python Java | Hard | |
544 | Output Contest Matches | Python Java | Medium |
# | Title | Solution | Difficulty | Note |
---|---|---|---|---|
292 | Nim Game | Python Java | Easy | |
319 | Bulb Switcher | Python Java | Medium |
# | Title | Solution | Difficulty | Note |
---|---|---|---|---|
329 | Longest Increasing Path in a Matrix | Python Java | Hard |
# | Title | Solution | Difficulty | Note |
---|---|---|---|---|
346 | Moving Average from Data Stream | Python Java | Easy | |
353 | Design Snake Game | Python Java | Medium | |
363 | Max Sum of Rectangle No Larger Than K | Python Java | Hard |
# | Title | Solution | Difficulty | Note |
---|---|---|---|---|
375 | Guess Number Higher or Lower II | Python Java | Medium | |
464 | Can I Win | Python Java | Medium | |
486 | Predict the Winner | Python Java | Medium |
# | Title | Solution | Difficulty | Note |
---|---|---|---|---|
382 | Linked List Random Node | Python Java | Medium | |
398 | Random Pick Index | Python Java | Medium |