/leetcode

LeetCode Problems' Solutions

Primary LanguageC++

LeetCode

LeetCode Algorithm

(Notes: "♥" means you need to buy a book from Leetcode)

# Title Solution Difficulty
1170 Compare Strings by Frequency of the Smallest Character C++ Easy
1030 Matrix Cells in Distance Order C++ Easy
1029 Two City Scheduling C++ Easy
1028 Recover a Tree From Preorder Traversal C++ Hard
1024 Video Stitching C++ Medium
993 Cousins in Binary Tree C++ Easy
991 Broken Calculator C++ Medium
990 Satisfiability of Equality Equations C++ Medium
989 Add to Array-Form of Integer C++ Easy
988 Smallest String Starting From Leaf C++ Medium
987 Vertical Order Traversal of a Binary Tree C++ Medium
986 Interval List Intersections C++ Medium
985 Sum of Even Numbers After Queries C++ Easy
984 String Without AAA or BBB C++ Easy
983 Minimum Cost For Tickets C++ Medium
981 Time Based Key-Value Store C++ Medium
980 Unique Paths III C++ Hard
979 Distribute Coins in Binary Tree C++ Medium
978 Longest Turbulent Subarray C++,Python Medium
977 Squares of a Sorted Array C++, Python Easy
976 Largest Perimeter Triangle C++, Python Easy
971 Flip Binary Tree To Match Preorder Traversal Python Medium
969 Pancake Sorting Python Medium
958 Check Completeness of a Binary Tree Python Medium
951 Flip Equivalent Binary Trees Python Medium
950 Reveal Cards In Increasing Order Python Medium
941 Valid Mountain Array Python Easy
931 Minimum Falling Path Sum C++ Medium
922 Sort Array By Parity II C++ Easy
914 X of a Kind in a Deck of Cards Python Easy
905 Sort Array By Parity C++ Easy
859 Buddy Strings C++ Easy
858 Mirror Reflection C++ Medium
852 Peak Index in a Mountain Array C++ Easy
849 Maximize Distance to Closest Person Python Easy
844 Backspace String Compare C++ Easy
837 Most Common Word C++ Easy
830 Positions of Large Groups Python Easy
804 Unique Morse Code Words C++ Easy
771 Jewels and Stones C++ Easy
747 Largest Number At Least Twice of Others Python Easy
746 Min Cost Climbing Stairs C++, Python Easy
721 Accounts Merge C++ Medium
717 1-bit and 2-bit Characters Python Easy
714 Best Time to Buy and Sell Stock with Transaction Fee C++ Medium
712 Minimum ASCII Delete Sum for Two Strings C++ Medium
695 Max Area of Island C++ Medium
687 Longest Univalue Path Python Easy
684 Redundant Connection Python Medium
674 Longest Continuous Increasing Subsequence Python Easy
671 Second Minimum Node In a Binary Tree Python Easy
665 Non-decreasing Array Python Easy
662 Maximum Width of Binary Tree Python Medium
661 Image Smoother Python Easy
655 Print Binary Tree Python Medium
652 Find Duplicate Subtrees Python Medium
647 Palindromic Substrings C++ Medium
643 Maximum Average Subarray I C++, Python Easy
628 Maximum Product of Three Numbers Python Easy
623 Add One Row to Tree Python Medium
581 Shortest Unsorted Continuous Subarray Python Easy
572 Subtree of Another Tree Python Easy
563 Binary Tree Tilt Python Easy
547 Friend Circles C++ Medium
543 Diameter of Binary Tree Python Easy
538 Convert BST to Greater Tree Python Easy
532 K-diff Pairs in an Array Python Easy
520 Detect Capital C++ Easy
518 Coin Change 2 C++ Medium
509 Fibonacci Number C++, Python Easy
477 Total Hamming Distance C++ Medium
463 Island Perimeter C++ Easy
450 DeleteNodeInABST Python Medium
449 Serialize and Deserialize BST Python Medium
437 Path Sum III Python Medium
418 SentenceScreenFitting C++ Easy
416 Partition Equal Subset Sum C++ Medium
415 Add Strings C++ Easy
414 Third Maximum Number C++, Python Easy
413 Arithmetic Slices C++ Medium
412 Fizz Buzz C++ Easy
410 Split Array Largest Sum C++ Hard
409 Longest Palindrome C++ Easy
406 Queue Reconstruction by Height C++ Medium
405 Convert a Number to Hexadecimal C++ Easy
404 Sum of Left Leaves C++, Python Easy
403 Frog Jump C++ Hard
402 Remove K Digits C++ Medium
401 Binary Watch C++ Easy
400 Nth Digit C++ Easy
399 Evaluate Division C++ Medium
398 Random Pick Index C++ Medium
397 Integer Replacement C++ Medium
396 Rotate Function C++ Easy
395 Longest Substring with At Least K Repeating Characters C++ Medium
394 Decode String C++ Medium
393 UTF-8 Validation C++ Medium
392 Is Subsequence C++ Medium
391 Perfect Rectangle C++ Hard
390 Elimination Game C++ Medium
389 Find the Difference C++ Easy
388 Longest Absolute File Path C++ Medium
387 First Unique Character in a String C++ Easy
386 Lexicographical Numbers C++ Medium
385 Mini Parser C++ Medium
384 Shuffle an Array C++ Medium
383 Ransom Note C++ Easy
382 Linked List Random Node C++ Medium
381 Insert Delete GetRandom O(1) - Duplicates allowed C++ Hard
380 Insert Delete GetRandom O(1) C++ Hard
377 Combination Sum IV C++ Medium
376 Wiggle Subsequence C++ Medium
371 Sum of Two Integers C++ Easy
367 Valid Perfect Square C++ Easy
357 Count Numbers with Unique Digits C++ Medium
350 Intersection of Two Arrays II C++ Easy
349 Intersection of Two Arrays C++ Easy
347 Top K Frequent Elements C++ Medium
345 Reverse Vowels of a String C++ Easy
344 Reverse String C++ Easy
343 Integer Break C++ Medium
342 Power of Four C++ Easy
341 Flatten Nested List Iterator C++ Medium
338 Counting Bits C++ Medium
337 House Robber III C++, Python Medium
336 Palindrome Pairs C++ Hard
334 Increasing Triplet Subsequence C++ Medium
332 Reconstruct Itinerary C++ Medium
331 Verify Preorder Serialization of a Binary Tree C++ Medium
330 Patching Array C++ Medium
329 Longest Increasing Path in a Matrix C++ Medium
328 Odd Even Linked List C++ Easy
327 Count of Range Sum C++ Hard
326 Power of Three C++ Easy
324 Wiggle Sort II C++ Medium
322 Coin Change C++ Medium
321 Create Maximum Number C++ Hard
319 Bulb Switcher C++ Medium
318 Maximum Product of Word Lengths C++ Medium
316 Remove Duplicate Letters C++ Hard
315 Count of Smaller Numbers After Self C++ Hard
313 Super Ugly Number C++ Medium
312 Burst Balloons C++ Hard
310 Minimum Height Trees C++ Medium
309 Best Time to Buy and Sell Stock with Cooldown C++ Medium
307 Range Sum Query - Mutable C++ Medium
306 Additive Number C++ Medium
304 Range Sum Query 2D - Immutable C++ Medium
303 Range Sum Query - Immutable C++ Easy
301 Remove Invalid Parentheses C++ Hard
300 Longest Increasing Subsequence C++ Medium
299 Bulls and Cows C++ Easy
297 Serialize and Deserialize Binary Tree C++ Medium
295 Find Median from Data Stream C++ Hard
292 Nim Game C++ Easy
290 Word Pattern C++ Easy
289 Game of Life C++ Medium
287 Find the Duplicate Number C++, Python Hard
285 Inorder Successor in BST Java Medium
284 Peeking Iterator C++ Medium
283 Move Zeroes C++ Easy
282 Expression Add Operators C++ Hard
279 Perfect Squares C++ Medium
278 First Bad Version C++, Java Easy
275 H-Index II C++ Medium
274 H-Index C++ Medium
273 Integer to English Words C++ Medium
268 Missing Number C++ Medium
264 Ugly Number II C++ Medium
263 Ugly Number C++ Easy
260 Single Number III C++ Medium
258 Add Digits C++ Easy
257 Binary Tree Paths C++ Easy
242 Valid Anagram C++, Java Easy
241 Different Ways to Add Parentheses C++, Python Medium
240 Search a 2D Matrix II C++, Java, Python Medium
239 Sliding Window Maximum C++ Hard
238 Product of Array Except Self C++ Medium
237 Delete Node in a Linked List C++ Easy
236 Lowest Common Ancestor of a Binary Tree C++, Java, Python Medium
235 Lowest Common Ancestor of a Binary Search Tree C++, Python Easy
234 Palindrome Linked List C++ Easy
233 Number of Digit One C++ Medium
232 Implement Queue using Stacks C++, Java Easy
231 Power of Two C++ Easy
230 Kth Smallest Element in a BST C++, Python Medium
229 Majority Element II C++ Medium
228 Summary Ranges C++ Easy
227 Basic Calculator II C++ Medium
226 Invert Binary Tree C++ Easy
225 Implement Stack using Queues C++, Java Medium
224 Basic Calculator C++ Medium
223 Rectangle Area C++ Easy
222 Count Complete Tree Nodes C++, Python Medium
221 Maximal Square C++ Medium
220 Contains Duplicate III C++, Python Medium
219 Contains Duplicate II C++, Python Easy
218 The Skyline Problem C++ Hard
217 Contains Duplicate C++ Easy
216 Combination Sum III C++ Medium
215 Kth Largest Element in an Array C++ Medium
214 Shortest Palindrome C++ Hard
213 House Robber II C++ Medium
212 Word Search II C++ Hard
211 Add and Search Word - Data structure design C++ Medium
210 Course Schedule II C++ Medium
209 Minimum Size Subarray Sum C++ Medium
208 Implement Trie (Prefix Tree) C++ Medium
207 Course Schedule C++ Medium
206 Reverse Linked List C++, Java Easy
205 Isomorphic Strings C++ Easy
204 Count Primes C++ Easy
203 Remove Linked List Elements C++ Easy
202 Happy Number C++, Python Easy
201 Bitwise AND of Numbers Range C++ Medium
200 Number of Islands C++, Python Medium
199 Binary Tree Right Side View C++ Medium
198 House Robber C++, Python Easy
191 Number of 1 Bits C++ Easy
190 Reverse Bits C++ Easy
189 Rotate Array C++, Java Easy
188 Best Time to Buy and Sell Stock IV C++ Hard
187 Repeated DNA Sequences C++ Medium
186 Reverse Words in a String II C++ Medium
179 Largest Number C++ Medium
174 Dungeon Game C++ Hard
173 Binary Search Tree Iterator C++, Java, Python Medium
172 Factorial Trailing Zeroes C++ Easy
171 Excel Sheet Column Number C++ Easy
170 Two Sum III - Data structure design C++ Easy
169 Majority Element C++ Easy
168 Excel Sheet Column Title C++ Easy
167 Two Sum II - Input array is sorted C++ Medium
166 Fraction to Recurring Decimal C++ Medium
165 Compare Version Numbers C++ Easy
164 Maximum Gap C++ Hard
163 Missing Ranges C++ Medium
162 Find Peak Element C++, Java Medium
161 One Edit Distance C++ Medium
160 Intersection of Two Linked Lists C++ Easy
159 Longest Substring with At Most Two Distinct Characters C++ Hard
158 Read N Characters Given Read4 II - Call multiple times C++ Hard
157 Read N Characters Given Read4 C++ Easy
156 Binary Tree Upside Down C++ Medium
155 Min Stack C++, Java Easy
154 Find Minimum in Rotated Sorted Array II C++ Hard
153 Find Minimum in Rotated Sorted Array C++, Java Medium
152 Maximum Product Subarray C++ Medium
151 Reverse Words in a String C++, Java Medium
150 Evaluate Reverse Polish Notation C++ Medium
149 Max Points on a Line C++ Hard
148 Sort List C++, Python Medium
147 Insertion Sort List C++, Python Medium
146 LRU Cache C++, Java Hard
145 Binary Tree Postorder Traversal C++, Python Hard
144 Binary Tree Preorder Traversal C++, Java Medium
143 Reorder List C++, Python Medium
142 Linked List Cycle II C++, Python Medium
141 Linked List Cycle C++ Medium
140 Word Break II C++ Hard
139 Word Break C++ Medium
138 Copy List with Random Pointer C++, Python Hard
137 Single Number II C++ Medium
136 Single Number C++ Medium
135 Candy C++ Hard
134 Gas Station C++ Medium
133 Clone Graph C++ Medium
132 Palindrome Partitioning II C++ Hard
131 Palindrome Partitioning C++ Medium
130 Surrounded Regions C++ Medium
129 Sum Root to Leaf Numbers C++, Python Medium
128 Longest Consecutive Sequence C++ Hard
127 Word Ladder C++ Medium
126 Word Ladder II C++ Hard
125 Valid Palindrome C++, Java Easy
124 Binary Tree Maximum Path Sum C++, Java Hard
123 Best Time to Buy and Sell Stock III C++ Hard
122 Best Time to Buy and Sell Stock II C++ Medium
121 Best Time to Buy and Sell Stock C++ Medium
120 Triangle C++, Java Medium
119 Pascal's Triangle II C++ Easy
118 Pascal's Triangle C++ Easy
117 Populating Next Right Pointers in Each Node II C++, Python Hard
116 Populating Next Right Pointers in Each Node C++, Python Medium
115 Distinct Subsequences C++ Hard
114 Flatten Binary Tree to Linked List C++, Python Medium
113 Path Sum II C++, Python Medium
112 Path Sum C++ Easy
111 Minimum Depth of Binary Tree C++ Easy
110 Balanced Binary Tree C++, Java Easy
109 Convert Sorted List to Binary Search Tree C++ Medium
108 Convert Sorted Array to Binary Search Tree C++ Medium
107 Binary Tree Level Order Traversal II C++ Easy
106 Construct Binary Tree from Inorder and Postorder Traversal C++, Python Medium
105 Construct Binary Tree from Preorder and Inorder Traversal C++, Python Medium
104 Maximum Depth of Binary Tree C++, Java Easy
103 Binary Tree Zigzag Level Order Traversal C++, Python Medium
102 Binary Tree Level Order Traversal C++, Java Easy
101 Symmetric Tree C++ Easy
100 Same Tree C++ Easy
99 Recover Binary Search Tree C++ Hard
98 Validate Binary Search Tree C++, Java, Python Medium
97 Interleaving String C++ Hard
96 Unique Binary Search Trees C++, Python Medium
95 Unique Binary Search Trees II C++, Python Medium
94 Binary Tree Inorder Traversal C++ Medium
93 Restore IP Addresses C++ Medium
92 Reverse Linked List II C++, Java, Python Medium
91 Decode Ways C++ Medium
90 Subsets II C++, Java Medium
89 Gray Code C++ Medium
88 Merge Sorted Array C++ Easy
87 Scramble String C++ Hard
86 Partition List C++, Python Medium
85 Maximal Rectangle C++ Hard
84 Largest Rectangle in Histogram C++ Hard
83 Remove Duplicates from Sorted List C++ Easy
82 Remove Duplicates from Sorted List II C++, Python Medium
81 Search in Rotated Sorted Array II C++ Medium
80 Remove Duplicates from Sorted Array II C++ Medium
79 Word Search C++ Medium
78 Subsets C++, Java, Python Medium
77 Combinations C++ Medium
76 Minimum Window Substring C++ Hard
75 Sort Colors C++ Medium
74 Search a 2D Matrix C++, Java Medium
73 Set Matrix Zeroes C++ Medium
72 Edit Distance C++ Hard
71 Simplify Path C++ Medium
70 Climbing Stairs C++, Java Easy
69 Sqrt(x) C++ Medium
68 Text Justification C++ Hard
67 Add Binary C++ Easy
66 Plus One C++ Easy
65 Valid Number C++ Easy
64 Minimum Path Sum C++, Java Medium
63 Unique Paths II C++, Java Medium
62 Unique Paths C++, Java Medium
61 Rotate List C++ Medium
60 Permutation Sequence C++ Medium
59 Spiral Matrix II C++ Medium
58 Length of Last Word C++, Java Easy
57 Insert Interval C++ Hard
56 Merge Intervals C++ Hard
55 Jump Game C++ Medium
54 Spiral Matrix C++ Medium
53 Maximum Subarray C++ Medium
52 N-Queens II C++ Hard
51 N-Queens C++ Hard
50 "Pow(x, n)" C++, Java Medium
49 Group Anagrams C++ Medium
48 Rotate Image C++ Medium
47 Permutations II C++ Hard
46 Permutations C++ Medium
45 Jump Game II C++ Hard
44 Wildcard Matching C++ Hard
43 Multiply Strings C++ Medium
42 Trapping Rain Water C++ Hard
41 First Missing Positive C++ Hard
40 Combination Sum II C++ Medium
39 Combination Sum C++ Medium
38 Count and Say C++, Java Easy
37 Sudoku Solver C++ Hard
36 Valid Sudoku C++ Easy
35 Search Insert Position C++, Java Medium
34 Search for a Range C++, Java Medium
33 Search in Rotated Sorted Array C++, Java Hard
32 Longest Valid Parentheses C++ Hard
31 Next Permutation C++ Medium
30 Substring with Concatenation of All Words C++ Hard
29 Divide Two Integers C++ Medium
28 Implement strStr() C++, Java Easy
27 Remove Element C++ Easy
26 Remove Duplicates from Sorted Array C++, Java Easy
25 Reverse Nodes in k-Group C++ Hard
24 Swap Nodes in Pairs C++ Medium
23 Merge k Sorted Lists C++ Hard
22 Generate Parentheses C++ Medium
21 Merge Two Sorted Lists C++ Easy
20 Valid Parentheses C++ Easy
19 Remove Nth Node From End of List C++, Python Easy
18 4Sum C++ Medium
17 Letter Combinations of a Phone Number C++ Medium
16 3Sum Closest C++ Medium
15 3Sum C++ Medium
14 Longest Common Prefix C++ Easy
13 Roman to Integer C++ Easy
12 Integer to Roman C++ Medium
11 Container With Most Water C++ Medium
10 Regular Expression Matching C++ Hard
9 Palindrome Number C++, Java Easy
8 String to Integer (atoi) C++ Easy
7 Reverse Integer C++ Easy
6 ZigZag Conversion C++ Easy
5 Longest Palindromic Substring C++ Medium
4 Median of Two Sorted Arrays C++ Hard
3 Longest Substring Without Repeating Characters C++ Medium
2 Add Two Numbers C++ Medium
1 Two Sum C++, Go Easy

LeetCode Shell

# Title Solution Difficulty
4 Tenth Line Bash Easy
3 Transpose File Bash Medium
2 Valid Phone Numbers Bash Easy
1 Word Frequency Bash Medium

LintCode

# Title Solution Difficulty
1 Search in a big sorted array Java Medium
2 Search Range in Binary Search Tree Java Medium