01 |
Two Sum |
java |
Easy |
02 |
Add Two Numbers |
java |
Medium |
03 |
Longest Substring Without Repeating Characters |
java |
Medium |
05 |
Longest Palindromic Substring |
java |
Medium |
06 |
ZigZag Conversion |
java |
Medium |
07 |
Reverse Integer |
java |
Easy |
08 |
String to Integer (atoi) |
java |
Medium |
09 |
Palindrome Number |
java |
Easy |
10 |
Regular Expression Matching |
java |
Hard |
11 |
Container With Most Water |
java |
Medium |
12 |
Integer to Roman |
java |
Medium |
13 |
Roman to Integer |
java |
Easy |
14 |
Longest Common Prefix |
java |
Easy |
15 |
3Sum |
java |
Medium |
16 |
3Sum-closest |
java |
Medium |
17 |
Letter Combinations of a Phone Number |
java |
Medium |
18 |
4Sum |
java |
Medium |
19 |
Remove Nth Node From End of List |
java |
Medium |
20 |
Valid Parentheses |
java |
Easy |
21 |
Merge Two Sorted Lists |
java |
Easy |
22 |
Generate Parentheses |
java |
Medium |
23 |
Merge k Sorted Lists |
java |
Hard |
24 |
Swap Nodes in Pairs |
java |
Medium |
25 |
Reverse Nodes in k-Group |
java |
Hard |
26 |
Remove Duplicates from Sorted Array |
java |
Easy |
27 |
Remove Element |
java |
Easy |
28 |
Implement strStr() |
java |
Easy |
29 |
Divide Two Integers |
java |
Medium |
30 |
Substring with Concatenation of All Words |
java |
Hard |
31 |
Next Permutation |
java |
Medium |
32 |
Longest Valid Parentheses |
java |
Hard |
33 |
Search in Rotated Sorted Array |
java |
Medium |
34 |
Find First and Last Position of Element in Sorted Array |
java |
Medium |
35 |
Search Insert Position |
java |
Easy |
38 |
Count and Say |
java |
Easy |
39 |
Combination Sum |
java |
Medium |
40 |
Combination Sum II |
java |
Medium |
42 |
Trapping Rain Water |
java |
Hard |
46 |
Permutations |
java |
Medium |
47 |
Permutations II |
java |
Medium |
49 |
Group Anagrams |
java |
Medium |
50 |
Pow(x, n) |
java |
Medium |
51 |
N-Queens |
java |
Hard |
52 |
N-Queens II |
java |
Hard |
53 |
Maximum Subarray |
java |
Easy |
54 |
Spiral Matrix |
java |
Medium |
55 |
Jump Game |
java |
Medium |
56 |
Merge Intervals |
java |
Medium |
57 |
Insert Interval |
java |
Hard |
58 |
Length of Last Word |
java |
Easy |
59 |
Spiral Matrix II |
java |
Medium |
60 |
Permutation Sequence |
java |
Medium |
61 |
Rotate List |
java |
Medium |
62 |
Unique Paths |
java |
Medium |
63 |
Unique Paths II |
java |
Medium |
64 |
Minimum Path Sum |
java |
Medium |
65 |
Valid Number |
java |
Hard |
66 |
Plus One |
java |
Easy |
67 |
Add Binary |
java |
Easy |
69 |
Sqrt(x) |
java |
Easy |
70 |
Climbing Stairs |
java |
Easy |
72 |
Edit Distance |
java |
Hard |
73 |
Set Matrix Zeroes |
java |
Medium |
74 |
Search a 2d Matrix |
java |
Medium |
75 |
Sort Colors |
java |
Medium |
76 |
Minimum Window Substring |
java |
Hard |
77 |
Combinations |
java |
Medium |
78 |
Subsets |
java |
Medium |
79 |
Word Search |
java |
Medium |
80 |
Remove Duplicates from Sorted Array II |
java |
Medium |
81 |
Search in Rotated Sorted Array II |
java |
Medium |
82 |
Remove Duplicates from Sorted List II |
java |
Medium |
83 |
Remove Duplicates from Sorted List |
java |
Easy |
84 |
Largest Rectangle in Histogram |
java |
Hard |
86 |
Partition List |
java |
Medium |
87 |
Scramble String |
java |
Hard |
88 |
Merge Sorted Array |
java |
Easy |
89 |
Gray Code |
java |
Medium |
90 |
Subsets II |
java |
Medium |
91 |
Decode Ways |
java |
Medium |
92 |
Reverse Linked List II |
java |
Medium |
93 |
Restore IP Addresses |
java |
Medium |
94 |
Binary Tree Inorder Traversal |
java |
Medium |
95 |
Unique Binary Search Trees II |
java |
Medium |
97 |
Interleaving String |
java |
Hard |
98 |
Validate Binary Search Tree |
java |
Medium |
99 |
Recover Binary Search Tree |
java |
Hard |
100 |
Same Tree |
java |
Easy |
101 |
Symmetric Tree |
java |
Easy |
102 |
Binary Tree Level Order Traversal |
java |
Medium |
104 |
Maximum Depth of Binary Tree |
java |
Easy |
105 |
Construct Binary Tree from Preorder and Inorder Traversal |
java |
Medium |
107 |
Binary Tree Level Order Traversal II |
java |
Easy |
110 |
Balanced Binary Tree |
java |
Easy |
111 |
Minimum Depth of Binary Tree |
java |
Easy |
112 |
Path Sum |
java |
Easy |
113 |
Path Sum II |
java |
Medium |
114 |
Flatten Binary Tree to Linked List |
java |
Medium |
116 |
Populating Next Right Pointers in Each Node |
java |
Medium |
117 |
Populating Next Right Pointers in Each Node II |
java |
Medium |
118 |
Pascal's Triangle |
java |
Easy |
119 |
Pascal's Triangle II |
java |
Easy |
120 |
Triangle |
java |
Medium |
121 |
Best Time to Buy and Sell Stock |
java |
Easy |
122 |
Best Time to Buy and Sell Stock II |
java |
Easy |
124 |
Binary Tree Maximum Path Sum |
java |
Hard |
125 |
Valid Palindrome |
java |
Easy |
127 |
Word Ladder |
java |
Hard |
128 |
Longest Consecutive Sequence |
java |
Hard |
129 |
Sum Root to Leaf Numbers |
java |
Medium |
131 |
Palindrome Partitioning |
java |
Medium |
132 |
Palindrome Partitioning II |
java |
Hard |
133 |
Clone Graph |
java |
Medium |
134 |
Gas Station |
java |
Medium |
136 |
Single Number |
java |
Easy |
137 |
Single Number II |
java |
Medium |
141 |
Linked List Cycle |
java |
Easy |
142 |
Linked List Cycle II |
java |
Medium |
143 |
Reorder List |
java |
Medium |
144 |
Binary Tree Preorder Traversal |
java |
Medium |
145 |
Binary Tree Postorder Traversal |
java |
Hard |
146 |
LRU Cache |
java |
Medium |
147 |
Insertion Sort List |
java |
Medium |
148 |
Sort List |
java |
Medium |
150 |
Evaluate Reverse Polish Notation |
java |
Medium |
151 |
Reverse Words in a String |
java |
Medium |
152 |
Maximum Product Subarray |
java |
Medium |
153 |
Find Minimum in Rotated Sorted Array |
java |
Medium |
154 |
Find Minimum in Rotated Sorted Array II |
java |
Hard |
155 |
Min Stack |
java |
Easy |
160 |
Intersection of Two Linked Lists |
java |
Easy |
162 |
Find Peak Element |
java |
Medium |
165 |
Compare Version Numbers |
java |
Medium |
167 |
Two Sum II - Input array is sorted |
java |
Easy |
168 |
Excel Sheet Column Title |
java |
Easy |
169 |
Majority Element |
java |
Easy |
171 |
Excel Sheet Column Number |
java |
Easy |
172 |
Factorial Trailing Zeroes |
java |
Easy |
173 |
Binary Search Tree Iterator |
java |
Medium |
174 |
Dungeon Game |
java |
Hard |
179 |
Largest Number |
java |
Medium |
187 |
Repeated DNA Sequences |
java |
Medium |
188 |
Best Time to Buy and Sell Stock IV |
java |
Hard |
189 |
Rotate Array |
java |
Easy |
190 |
Reverse Bits |
java |
Easy |
191 |
Number of 1 Bits |
java |
Easy |
198 |
House Robber |
java |
Easy |
199 |
Binary Tree Right Side View |
java |
Medium |
200 |
Number of Islands |
java |
Medium |
201 |
Bitwise AND of Numbers Range |
java |
Medium |
202 |
Happy Number |
java |
Easy |
203 |
Remove Linked List Elements |
java |
Easy |
204 |
Count Primes |
java |
Easy |
205 |
Isomorphic Strings |
java |
Easy |
206 |
Reverse Linked List |
java |
Easy |
208 |
Implement Trie (Prefix Tree) |
java |
Medium |
209 |
Minimum Size Subarray Sum |
java |
Medium |
213 |
House Robber II |
java |
Medium |
215 |
Kth Largest Element in an Array |
java |
Medium |
216 |
Combination Sum III |
java |
Medium |
217 |
Contains Duplicate |
java |
Easy |
219 |
Contains Duplicate II |
java |
Easy |
220 |
Contains Duplicate III |
java |
Medium |
221 |
Maximal Square |
java |
Medium |
225 |
Implement Stack using Queues |
java |
Easy |
226 |
Invert Binary Tree |
java |
Easy |
231 |
Power of Two |
java |
Easy |
234 |
Palindrome Linked List |
java |
Easy |
235 |
Lowest Common Ancestor of a Binary Search Tree |
java |
Easy |
236 |
Lowest Common Ancestor of a Binary Search Tree II |
java |
Medium |
237 |
Delete Node in a Linked List |
java |
Easy |
238 |
Product of Array Except Self |
java |
Medium |
239 |
Sliding Window Maximum |
java |
Hard |
242 |
Valid Anagram |
java |
Easy |
257 |
Binary Tree Paths |
java |
Easy |
258 |
Add Digits |
java |
Easy |
260 |
Single Number III |
java |
Medium |
263 |
Ugly Number |
java |
Easy |
264 |
Ugly Number II |
java |
Medium |
268 |
Missing Number |
java |
Easy |
279 |
Perfect Squares |
java |
Medium |
283 |
Move Zeroes |
java |
Easy |
287 |
Find the Duplicate Number |
java |
Medium |
290 |
Word Pattern |
java |
Easy |
312 |
Burst Balloons |
java |
Hard |
313 |
Super Ugly Number |
java |
Medium |
316 |
Remove Duplicate Letters |
java |
Hard |
322 |
Coin Change |
java |
Medium |
328 |
Odd Even Linked List |
java |
Medium |
334 |
Increasing Triplet Subsequence |
java |
Medium |
338 |
Counting Bits |
java |
Medium |
342 |
Power of Four |
java |
Easy |
343 |
Integer Break |
java |
Medium |
344 |
Reverse String |
java |
Easy |
345 |
Reverse Vowels of a String |
java |
Easy |
347 |
Top K Frequent Elements |
java |
Medium |
349 |
Intersection of Two Arrays |
java |
Easy |
350 |
Intersection of Two Arrays II |
java |
Easy |
354 |
Russian Doll Envelopes |
java |
Hard |
355 |
Design Twitter |
java |
Medium |
365 |
Water and Jug Problem |
java |
Medium |
371 |
Sum of Two Integers |
java |
Easy |
372 |
Super Pow |
java |
Medium |
374 |
Guess Number Higher or Lower |
java |
Easy |
377 |
Combination Sum IV |
java |
Medium |
380 |
Insert Delete GetRandom O(1) |
java |
Medium |
384 |
Shuffle an Array |
java |
Medium |
386 |
Lexicographical Numbers |
java |
Medium |
387 |
First Unique Character in a String |
java |
Easy |
390 |
Elimination Game |
java |
Medium |
397 |
Integer Replacement |
java |
Medium |
398 |
Random Pick Index |
java |
Medium |
400 |
Nth Digit |
java |
Medium |
401 |
Binary Watch |
java |
Easy |
404 |
Sum of Left Leaves |
java |
Easy |
405 |
Convert a Number to Hexadecimal |
java |
Easy |
406 |
Queue Reconstruction by Height |
java |
Medium |
409 |
Longest Palindrome |
java |
Easy |
414 |
Third Maximum Number |
java |
Easy |
415 |
Add Strings |
java |
Easy |
416 |
Partition Equal Subset Sum |
java |
Medium |
434 |
Number of Segments in a String |
java |
Easy |
435 |
Non-overlapping Intervals |
java |
Medium |
441 |
Arranging Coins |
java |
Easy |
442 |
Find All Duplicates in an Array |
java |
Medium |
443 |
String Compression |
java |
Medium |
447 |
Number of Boomerangs |
java |
Easy |
448 |
Find All Numbers Disappeared in an Array |
java |
Easy |
453 |
Minimum Moves to Equal Array Elements |
java |
Easy |
454 |
4Sum II |
java |
Medium |
459 |
Repeated Substring Pattern |
java |
Easy |
461 |
Hamming Distance |
java |
Easy |
462 |
Minimum Moves to Equal Array Elements II |
java |
Medium |
485 |
Max Consecutive Ones |
java |
Easy |
491 |
Increasing Subsequences |
java |
Medium |
494 |
Target Sum |
java |
Easy |
496 |
Next Greater Element I |
java |
Easy |
500 |
Keyboard Row |
java |
Medium |
506 |
Relative Ranks |
java |
Easy |
509 |
Fibonacci Number |
java |
Easy |
518 |
Coin Change 2 |
java |
Medium |
520 |
Detect Capital |
java |
Easy |
532 |
K-diff Pairs in an Array |
java |
Easy |
543 |
Diameter of Binary Tree |
java |
Easy |
556 |
Next Greater Element III |
java |
Medium |
560 |
Subarray Sum Equals K |
java |
Medium |
561 |
Array Partition I |
java |
Easy |
567 |
Permutation in String |
java |
Medium |
575 |
Distribute Candies |
java |
Easy |
589 |
N-ary Tree Preorder Traversal |
java |
Easy |
590 |
N-ary Tree Postorder Traversal |
java |
Easy |
593 |
Valid Square |
java |
Medium |
594 |
Longest Harmonious Subsequence |
java |
Easy |
599 |
Minimum Index Sum of Two Lists |
java |
Medium |
611 |
Valid Triangle Number |
java |
Medium |
637 |
Average of Levels in Binary Tree |
java |
Easy |
643 |
Maximum Average Subarray I |
java |
Easy |
645 |
Set Mismatch |
java |
Easy |
650 |
2 Keys Keyboard |
java |
Medium |
654 |
Maximum Binary Tree |
java |
Medium |
657 |
Robot Return to Origin |
java |
Easy |
680 |
Valid Palindrome II |
java |
Easy |
692 |
Top K Frequent Words |
java |
Medium |
696 |
Count Binary Substrings |
java |
Easy |
698 |
Partition to K Equal Sum Subsets |
java |
Medium |
709 |
To Lower Case |
java |
Easy |
713 |
Subarray Product Less Than K |
java |
Medium |
718 |
Maximum Length of Repeated Subarray |
java |
Medium |
724 |
Find Pivot Index |
java |
Easy |
740 |
Delete and Earn |
java |
Medium |
767 |
Reorganize String |
java |
Medium |
771 |
Jewels and Stones |
java |
Easy |
788 |
Rotated Digits |
java |
Easy |
795 |
Number of Subarrays with Bounded Maximum |
java |
Medium |
804 |
Unique Morse Code Words |
java |
Easy |
819 |
Most Common Word |
java |
Easy |
821 |
Shortest Distance to a Character |
java |
Easy |
824 |
Goat Latin |
java |
Easy |
841 |
Keys and Rooms |
java |
Medium |
860 |
Lemonade Change |
java |
Easy |
866 |
Prime Palindrome |
java |
Medium |
877 |
Stone Game |
java |
Medium |
896 |
Monotonic Array |
java |
Easy |
898 |
Bitwise ORs of Subarrays |
java |
Medium |
908 |
Smallest Range I |
java |
Easy |
994 |
Rotting Oranges |
java |
Easy |
1011 |
Capacity To Ship Packages Within D Days |
java |
Medium |
1012 |
Numbers With Repeated Digits |
java |
Hard |
1015 |
Smallest Integer Divisible by K |
java |
Medium |
1018 |
Binary Prefix Divisible By 5 |
java |
Easy |
1019 |
Next Greater Node In Linked List |
java |
Medium |
1027 |
Longest Arithmetic Subsequence |
java |
Medium |
1029 |
Two City Scheduling |
java |
Medium |
1046 |
Last Stone Weight |
java |
Easy |
1089 |
Duplicate Zeros |
java |
Easy |
1103 |
Distribute Candies to People |
java |
Easy |
1115 |
Print FooBar Alternately |
java |
Medium |
1117 |
Building H2O |
java |
Medium |
1122 |
Relative Sort Array |
java |
Easy |
1143 |
Longest Common Subsequence |
java |
Medium |
1201 |
Ugly Number III |
java |
Medium |
1222 |
Queens That Can Attack the King |
java |
Medium |
1250 |
Check If It Is a Good Array |
java |
Hard |
1325 |
Delete Leaves With a Given Value |
java |
Medium |
1338 |
Reduce Array Size to The Half |
java |
Medium |