001 |
Two Sum |
Easy |
Java |
2种方法:暴力 和 HashMap |
002 |
Add Two Numbers |
Medium |
Java |
2种方法:模拟 和 递归 |
003 |
Longest Substring Without Repeating Characters |
Medium |
Java |
|
004 |
Median of Two Sorted Arrays |
Hard |
Java |
4种方法:合并数组,暴力法,二分搜索,划分数组 |
005 |
Longest Palindromic Substring |
Medium |
Java |
|
010 |
Regular Expression Matching |
Hard |
Java |
|
011 |
Container With Most Water |
Medium |
Java |
2 Approaches: BF and Two Pointers with Image Explaination |
015 |
3Sum |
Medium |
Java |
3种方法:暴力,Hash,双指针 |
017 |
Letter Combinations of a Phone Number |
Medium |
Java |
4 Approaches: BF 4 Loops, Backtracking, BFS, Queue with Image Explaination |
019 |
Remove Nth Node From End of List |
Easy |
Java |
|
020 |
Valid Parentheses |
Easy |
Java |
|
021 |
Merge Two Sorted Lists |
Easy |
Java |
|
022 |
Generate Parentheses |
Medium |
Java |
2种方法:暴力法 和 回溯法 |
023 |
Merge k Sorted Lists |
Hard |
Java |
|
024 |
Swap Nodes in Pairs |
Medium |
Java |
|
025 |
Reverse Nodes in k-Group |
Hard |
Java |
|
031 |
Next Permutation |
Medium |
Java |
Two Pointers Solution with Detailed Explanation and Code Commented |
032 |
Longest Valid Parentheses |
Hard |
Java |
|
033 |
Search in Rotated Sorted Array |
Medium |
Java |
|
034 |
Search for a Range |
Medium |
Java |
|
035 |
Search Insert Position |
Medium |
Java |
|
039 |
Combination Sum |
Medium |
Java |
|
042 |
Trapping Rain Water |
Hard |
Java |
|
045 |
Jump Game II |
Medium |
Java |
|
046 |
Permutations |
Medium |
Java |
|
048 |
Rotate Image |
Medium |
Java |
|
049 |
Group Anagrams |
Medium |
Java |
|
053 |
Maximum Subarray |
Medium |
Java |
|
055 |
Jump Game |
Medium |
Java |
|
056 |
Merge Intervals |
Medium |
Java |
|
062 |
Unique Paths |
Medium |
Java |
|
064 |
Minimum Path Sum |
Medium |
Java |
|
070 |
Climbing Stairs |
Easy |
Java |
|
072 |
Edit Distance |
Hard |
Java |
|
075 |
Sort Colors |
Medium |
Java |
|
076 |
Minimum Window Substring |
Hard |
Java |
|
078 |
Subsets |
Medium |
Java |
|
079 |
Word Search |
Medium |
Java |
|
084 |
Largest Rectangle in Histogram |
Hard |
Java |
|
085 |
Maximal Rectangle |
Hard |
Java |
|
094 |
Binary Tree Inorder Traversal |
Medium |
Java |
|
096 |
Unique Binary Search Trees |
Medium |
Java |
|
098 |
Validate Binary Search Tree |
Medium |
Java |
|
101 |
Symmetric Tree |
Easy |
Java |
|
102 |
Binary Tree Level Order Traversal |
Easy |
Java |
|
104 |
Maximum Depth of Binary Tree |
Easy |
Java |
|
105 |
Construct Binary Tree from Preorder and Inorder Traversal |
Medium |
Java |
|
114 |
Flatten Binary Tree to Linked List |
Medium |
Java |
|
121 |
Best Time to Buy and Sell Stock |
Easy |
Java |
|
128 |
Longest Consecutive Sequence |
Hard |
Java |
|
136 |
Single Number |
Easy |
Java |
|
139 |
Word Break |
Medium |
Java |
|
141 |
Linked List Cycle |
Easy |
Java |
|
142 |
Linked List Cycle II |
Medium |
Java |
|
146 |
LRU Cache |
Hard |
Java |
|
148 |
Sort List |
Medium |
Java |
|
152 |
Maximum Product Subarray |
Medium |
Java |
|
155 |
Min Stack |
Easy |
Java |
3种方法:辅助栈,栈,链表 |
160 |
Intersection of Two Linked Lists |
Easy |
Java |
|
169 |
Majority Element |
Easy |
Java |
|
198 |
House Robber |
Easy |
Java |
|
200 |
Number of Islands |
Medium |
Java |
|
206 |
Reverse Linked List |
Easy |
Java |
|
207 |
Course Schedule |
Medium |
Java |
|
208 |
Implement Trie (Prefix Tree) |
Medium |
Java |
|
210 |
Course Schedule II |
Medium |
Java |
|
215 |
Kth Largest Element in an Array |
Medium |
Java |
|
221 |
Maximal Square |
Medium |
Java |
|
226 |
Invert Binary Tree |
Easy |
Java |
|
230 |
Kth Smallest Element in a BST |
Medium |
Java |
|
234 |
Palindrome Linked List |
Easy |
Java |
|
238 |
Product of Array Except Self |
Medium |
Java |
|
239 |
Sliding Window Maximum |
Hard |
Java |
|
240 |
Search a 2D Matrix II |
Medium |
Java |
|
253 |
Meeting Rooms II |
Medium |
没权限 |
|
279 |
Perfect Squares |
Medium |
Java |
|
283 |
Move Zeroes |
Easy |
Java |
|
287 |
Find the Duplicate Number |
Medium |
Java |
9 Approaches: Count, Hash, Sort, Binary Search, Bit, Fast Slow Pointers |
297 |
Serialize and Deserialize Binary Tree |
Hard |
Java |
|
300 |
Longest Increasing Subsequence |
Medium |
Java |
|
301 |
Remove Invalid Parentheses |
Hard |
Java |
|
309 |
Best Time to Buy and Sell Stock with Cooldown |
Medium |
Java |
|
312 |
Burst Balloons |
Hard |
Java |
|
322 |
Coin Change |
Medium |
Java |
|
328 |
Odd Even Linked List |
Medium |
Java |
|
337 |
House Robber III |
Medium |
Java |
|
338 |
Counting Bits |
Medium |
Java |
|
347 |
Top K Frequent Elements |
Medium |
Java |
|
394 |
Decode String |
Medium |
Java |
|
399 |
Evaluate Division |
Medium |
Java |
|
406 |
Queue Reconstruction by Height |
Medium |
Java |
|
416 |
Partition Equal Subset Sum |
Medium |
Java |
|
437 |
Path Sum III |
Easy |
Java |
|
438 |
Find All Anagrams in a String |
Easy |
Java |
滑动窗口:从HashMap,数组,再到统计字母数量之差 |
448 |
Find All Numbers Disappeared in an Array |
Easy |
Java |
|
461 |
Hamming Distance |
Easy |
Java |
|
494 |
Target Sum |
Medium |
Java |
|
538 |
Convert BST to Greater Tree |
Easy |
Java |
|
543 |
Diameter of Binary Tree |
Easy |
Java |
|
560 |
Subarray Sum Equals K |
Medium |
Java |
|
572 |
Subtree of Another Tree |
Easy |
Java |
|
581 |
Shortest Unsorted Continuous Subarray |
Easy |
Java |
|
617 |
Merge Two Binary Trees |
Easy |
Java |
4 Approaches: Recursion, Iteration, BFS and DFS |
621 |
Task Scheduler |
Medium |
Java |
|
647 |
Palindromic Substrings |
Medium |
Java |
|
739 |
Daily Temperatures |
Medium |
Java |
|
763 |
Partition Labels |
Medium |
Java |
Illustration of the Max Position of the Char in the Partition with Easy Detailed Explanation |