HuanChen1025 / LeetCode2018

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LeetCode 前 400 题

LeetCode solutions in Java 8 and Python3.

NO. Title 中文名 Solution Note Difficulty Tag
0 Two Sum 两数之和 Java Python Note Easy Mapping
1 Add Two Numbers 两数相加 Java Python Note Medium LinkedList
2 Longest Substring Without Repeating Characters 无重复字符的最长子串 Java Python Note Medium Mapping
3 Median of Two Sorted Arrays 两个排序数组的中位数 Java Python Note Hard
4 Longest Palindromic Substring 最长回文子串 Java Python Note Medium two pointers dp backtracking
5 ZigZag Conversion Z字形变换 Java Python Note Medium
6 Reverse Integer 反转整数 Java Python Note Easy
7 String to Integer (atoi) 字符串转整数 (atoi) Java Python Note Medium
8 Palindrome Number 回文数 Java Python Note Easy Array
9 Regular Expression Matching 正则表达式匹配 Java Python Note Hard
10 Container With Most Water 盛最多水的容器 Java Python Note Medium
11 Integer to Roman 整数转罗马数字 Java Python Note Medium
12 Roman to Integer 罗马数字转整数 Java Python Note Easy
13 Longest Common Prefix 最长公共前缀 Java Python Note Easy
14 3Sum 三数之和 Java Python Note Medium
15 3Sum Closest 最接近的三数之和 Java Python Note Medium
16 Letter Combinations of a Phone Number 电话号码的字母组合 Java Python Note Medium
17 4Sum 四数之和 Java Python Note Medium
18 Remove Nth Node From End of List 删除链表的倒数第N个节点 Java Python Note Medium
19 Valid Parentheses 有效的括号 Java Python Note Easy stack,mapping
20 Merge Two Sorted Lists 合并两个有序链表 Java Python Note Easy
21 Generate Parentheses 括号生成 Java Python Note Medium
22 Merge k Sorted Lists 合并K个排序链表 Java Python Note Hard
23 Swap Nodes in Pairs 两两交换链表中的节点 Java Python Note Medium
24 Reverse Nodes in k-Group k个一组翻转链表 Java Python Note Hard
25 Remove Duplicates from Sorted Array 删除排序数组中的重复项 Java Python Note Easy
26 Remove Element 移除元素 Java Python Note Easy
27 Implement strStr() 实现strStr() Java Python Note Easy
28 Divide Two Integers 两数相除 Java Python Note Medium
29 Substring with Concatenation of All Words 与所有单词相关联的字串 Java Python Note Hard
30 Next Permutation 下一个排列 Java Python Note Medium
31 Longest Valid Parentheses 最长有效括号 Java Python Note Hard
32 Search in Rotated Sorted Array 搜索旋转排序数组 Java Python Note Medium
33 Search for a Range 搜索范围 Java Python Note Medium
34 Search Insert Position 搜索插入位置 Java Python Note Easy
35 Valid Sudoku 有效的数独 Java Python Note Medium
36 Sudoku Solver 解数独 Java Python Note Hard
37 Count and Say 报数 Java Python Note Easy
38 Combination Sum 组合总和 Java Python Note Medium
39 Combination Sum II 组合总和 II Java Python Note Medium
40 First Missing Positive 缺失的第一个正数 Java Python Note Hard
41 Trapping Rain Water 接雨水 Java Python Note Hard
42 Multiply Strings 字符串相乘 Java Python Note Medium
43 Wildcard Matching 通配符匹配 Java Python Note Hard
44 Jump Game II 跳跃游戏 II Java Python Note Hard
45 Permutations 全排列 Java Python Note Medium
46 Permutations II 全排列 II Java Python Note Medium
47 Rotate Image 旋转图像 Java Python Note Medium
48 Group Anagrams 字母异位词分组 Java Python Note Medium
49 Pow(x, n) Pow(x, n) Java Python Note Medium
50 N-Queens Java Python Note Hard
51 N-Queens II Java Python Note Hard
52 Maximum Subarray Java Python Note Easy
53 Spiral Matrix Java Python Note Medium
54 Jump Game Java Python Note Medium
55 Merge Intervals Java Python Note Medium
56 Insert Interval Java Python Note Hard
57 Length of Last Word Java Python Note Easy
58 Spiral Matrix II Java Python Note Medium
59 Permutation Sequence Java Python Note Medium
60 Rotate List Java Python Note Medium
61 Unique Paths Java Python Note Medium
62 Unique Paths II Java Python Note Medium
63 Minimum Path Sum Java Python Note Medium
64 Valid Number Java Python Note Hard
65 Plus One Java Python Note Easy
66 Add Binary Java Python Note Easy
67 Text Justification Java Python Note Hard
68 Sqrt(x) Java Python Note Easy
69 Climbing Stairs Java Python Note Easy
70 Simplify Path Java Python Note Medium
71 Edit Distance Java Python Note Hard
72 Set Matrix Zeroes Java Python Note Medium
73 Search a 2D Matrix Java Python Note Medium
74 Sort Colors Java Python Note Medium
75 Minimum Window Substring Java Python Note Hard
76 Combinations Java Python Note Medium
77 Subsets Java Python Note Medium
78 Word Search Java Python Note Medium
79 Remove Duplicates from Sorted Array II Java Python Note Medium
80 Search in Rotated Sorted Array II Java Python Note Medium
81 Remove Duplicates from Sorted List II Java Python Note Medium
82 Remove Duplicates from Sorted List Java Python Note Easy List
83 Largest Rectangle in Histogram Java Python Note Hard
84 Maximal Rectangle Java Python Note Hard
85 Partition List Java Python Note Medium
86 Scramble String Java Python Note Hard
87 Merge Sorted Array Java Python Note Easy
88 Gray Code Java Python Note Medium
89 Subsets II Java Python Note Medium
90 Decode Ways Java Python Note Medium
91 Reverse Linked List II Java Python Note Medium
92 Restore IP Addresses Java Python Note Medium
93 Binary Tree Inorder Traversal Java Python Note Medium
94 Unique Binary Search Trees II Java Python Note Medium
95 Unique Binary Search Trees Java Python Note Medium
96 Interleaving String Java Python Note Hard
97 Validate Binary Search Tree Java Python Note Medium
98 Recover Binary Search Tree Java Python Note Hard
99 Same Tree Java Python Note Easy
100 Symmetric Tree Java Python Note Easy
101 Binary Tree Level Order Traversal Java Python Note Medium
102 Binary Tree Zigzag Level Order Traversal Java Python Note Medium
103 Maximum Depth of Binary Tree Java Python Note Easy
104 Construct Binary Tree from Preorder and Inorder Traversal Java Python Note Medium
105 Construct Binary Tree from Inorder and Postorder Traversal Java Python Note Medium
106 Binary Tree Level Order Traversal II Java Python Note Easy
107 Convert Sorted Array to Binary Search Tree Java Python Note Easy
108 Convert Sorted List to Binary Search Tree Java Python Note Medium
109 Balanced Binary Tree Java Python Note Easy
110 Minimum Depth of Binary Tree Java Python Note Easy
111 Path Sum Java Python Note Easy
112 Path Sum II Java Python Note Medium
113 Flatten Binary Tree to Linked List Java Python Note Medium
114 Distinct Subsequences Java Python Note Hard
115 Populating Next Right Pointers in Each Node Java Python Note Medium
116 Populating Next Right Pointers in Each Node II Java Python Note Medium
117 Pascal's Triangle 杨辉三角 Java Python Note Easy Array
118 Pascal's Triangle II Java Python Note Easy Array
119 Triangle Java Python Note Medium
120 Best Time to Buy and Sell Stock Java Python Note Easy
121 Best Time to Buy and Sell Stock II Java Python Note Easy
122 Best Time to Buy and Sell Stock III Java Python Note Hard
123 Binary Tree Maximum Path Sum Java Python Note Hard
124 Valid Palindrome Java Python Note Easy
125 Word Ladder II Java Python Note Hard
126 Word Ladder Java Python Note Medium
127 Longest Consecutive Sequence Java Python Note Hard
128 Sum Root to Leaf Numbers Java Python Note Medium
129 Surrounded Regions Java Python Note Medium
130 Palindrome Partitioning Java Python Note Medium
131 Palindrome Partitioning II Java Python Note Hard
132 Clone Graph Java Python Note Medium
133 Gas Station Java Python Note Medium
134 Candy Java Python Note Hard
135 Single Number Java Python Note Easy
136 Single Number II Java Python Note Medium
137 Copy List with Random Pointer Java Python Note Medium
138 Word Break Java Python Note Medium
139 Word Break II Java Python Note Hard
140 Linked List Cycle Java Python Note Easy
141 Linked List Cycle II Java Python Note Medium
142 Reorder List Java Python Note Medium
143 Binary Tree Preorder Traversal Java Python Note Medium
144 Binary Tree Postorder Traversal Java Python Note Hard
145 LRU Cache Java Python Note Hard
146 Insertion Sort List Java Python Note Medium
147 Sort List Java Python Note Medium
148 Max Points on a Line Java Python Note Hard
149 Evaluate Reverse Polish Notation Java Python Note Medium
150 Reverse Words in a String Java Python Note Medium
151 Maximum Product Subarray Java Python Note Medium
152 Find Minimum in Rotated Sorted Array Java Python Note Medium
153 Find Minimum in Rotated Sorted Array II Java Python Note Hard
154 Min Stack Java Python Note Easy
155 Binary Tree Upside Down Java Python Note None
156 Read N Characters Given Read4 Java Python Note None
157 Read N Characters Given Read4 II - Call multiple times Java Python Note None
158 Longest Substring with At Most Two Distinct Characters Java Python Note None
159 Intersection of Two Linked Lists Java Python Note Easy
160 One Edit Distance Java Python Note None
161 Find Peak Element Java Python Note Medium
162 Missing Ranges Java Python Note None
163 Maximum Gap Java Python Note Hard
164 Compare Version Numbers Java Python Note Medium
165 Fraction to Recurring Decimal Java Python Note Medium
166 Two Sum II - Input array is sorted Java Python Note Easy
167 Excel Sheet Column Title Java Python Note Easy
168 Majority Element Java Python Note Easy
169 Two Sum III - Data structure design Java Python Note None
170 Excel Sheet Column Number Java Python Note Easy
171 Factorial Trailing Zeroes Java Python Note Easy
172 Binary Search Tree Iterator Java Python Note Medium
173 Dungeon Game Java Python Note Hard
174 Combine Two Tables Java Python Note Easy
175 Second Highest Salary Java Python Note Easy
176 Nth Highest Salary Java Python Note Medium
177 Rank Scores Java Python Note Medium
178 Largest Number Java Python Note Medium
179 Consecutive Numbers Java Python Note Medium
180 Employees Earning More Than Their Managers Java Python Note Easy
181 Duplicate Emails Java Python Note Easy
182 Customers Who Never Order Java Python Note Easy
183 Department Highest Salary Java Python Note Medium
184 Department Top Three Salaries Java Python Note Hard
185 Reverse Words in a String II Java Python Note None
186 Repeated DNA Sequences Java Python Note Medium
187 Best Time to Buy and Sell Stock IV Java Python Note Hard
188 Rotate Array Java Python Note Easy
189 Reverse Bits Java Python Note Easy
190 Number of 1 Bits Java Python Note Easy
191 Word Frequency Java Python Note Medium
192 Valid Phone Numbers Java Python Note Easy
193 Transpose File Java Python Note Medium
194 Tenth Line Java Python Note Easy
195 Delete Duplicate Emails Java Python Note Easy
196 Rising Temperature Java Python Note Easy
197 House Robber Java Python Note Easy
198 Binary Tree Right Side View Java Python Note Medium
199 Number of Islands Java Python Note Medium
200 Bitwise AND of Numbers Range Java Python Note Medium
201 Happy Number Java Python Note Easy
202 Remove Linked List Elements Java Python Note Easy
203 Count Primes Java Python Note Easy
204 Isomorphic Strings Java Python Note Easy
205 Reverse Linked List Java Python Note Easy
206 Course Schedule Java Python Note Medium
207 Implement Trie (Prefix Tree) Java Python Note Medium
208 Minimum Size Subarray Sum Java Python Note Medium
209 Course Schedule II Java Python Note Medium
210 Add and Search Word - Data structure design Java Python Note Medium
211 Word Search II Java Python Note Hard
212 House Robber II Java Python Note Medium
213 Shortest Palindrome Java Python Note Hard
214 Kth Largest Element in an Array Java Python Note Medium
215 Combination Sum III Java Python Note Medium backtracking
216 Contains Duplicate Java Python Note Easy
217 The Skyline Problem Java Python Note Hard
218 Contains Duplicate II Java Python Note Easy
219 Contains Duplicate III Java Python Note Medium
220 Maximal Square Java Python Note Medium
221 Count Complete Tree Nodes Java Python Note Medium
222 Rectangle Area Java Python Note Medium
223 Basic Calculator Java Python Note Hard
224 Implement Stack using Queues Java Python Note Easy
225 Invert Binary Tree Java Python Note Easy
226 Basic Calculator II Java Python Note Medium
227 Summary Ranges Java Python Note Medium
228 Majority Element II Java Python Note Medium
229 Kth Smallest Element in a BST Java Python Note Medium
230 Power of Two Java Python Note Easy
231 Implement Queue using Stacks Java Python Note Easy
232 Number of Digit One Java Python Note Hard
233 Palindrome Linked List Java Python Note Easy
234 Lowest Common Ancestor of a Binary Search Tree Java Python Note Easy
235 Lowest Common Ancestor of a Binary Tree Java Python Note Medium
236 Delete Node in a Linked List Java Python Note Easy
237 Product of Array Except Self Java Python Note Medium Array
238 Sliding Window Maximum Java Python Note Hard
239 Search a 2D Matrix II Java Python Note Medium
240 Different Ways to Add Parentheses Java Python Note Medium
241 Valid Anagram Java Python Note Easy
242 Shortest Word Distance Java Python Note None
243 Shortest Word Distance II Java Python Note None
244 Shortest Word Distance III Java Python Note None
245 Strobogrammatic Number Java Python Note None
246 Strobogrammatic Number II Java Python Note None
247 Strobogrammatic Number III Java Python Note None
248 Group Shifted Strings Java Python Note None
249 Count Univalue Subtrees Java Python Note None
250 Flatten 2D Vector Java Python Note None
251 Meeting Rooms Java Python Note None
252 Meeting Rooms II Java Python Note None
253 Factor Combinations Java Python Note None
254 Verify Preorder Sequence in Binary Search Tree Java Python Note None
255 Paint House Java Python Note None
256 Binary Tree Paths Java Python Note Easy
257 Add Digits Java Python Note Easy
258 3Sum Smaller Java Python Note None
259 Single Number III Java Python Note Medium
260 Graph Valid Tree Java Python Note None
261 Trips and Users Java Python Note Hard
262 Ugly Number Java Python Note Easy
263 Ugly Number II Java Python Note Medium
264 Paint House II Java Python Note None
265 Palindrome Permutation Java Python Note None
266 Palindrome Permutation II Java Python Note None
267 Missing Number Java Python Note Easy
268 Alien Dictionary Java Python Note None
269 Closest Binary Search Tree Value Java Python Note None
270 Encode and Decode Strings Java Python Note None
271 Closest Binary Search Tree Value II Java Python Note None
272 Integer to English Words Java Python Note Hard
273 H-Index Java Python Note Medium
274 H-Index II Java Python Note Medium
275 Paint Fence Java Python Note None
276 Find the Celebrity Java Python Note None
277 First Bad Version Java Python Note Easy
278 Perfect Squares Java Python Note Medium
279 Wiggle Sort Java Python Note None
280 Zigzag Iterator Java Python Note None
281 Expression Add Operators Java Python Note Hard
282 Move Zeroes Java Python Note Easy
283 Peeking Iterator Java Python Note Medium
284 Inorder Successor in BST Java Python Note None
285 Walls and Gates Java Python Note None
286 Find the Duplicate Number Java Python Note Medium
287 Unique Word Abbreviation Java Python Note None
288 Game of Life Java Python Note Medium
289 Word Pattern Java Python Note Easy
290 Word Pattern II Java Python Note None
291 Nim Game Java Python Note Easy
292 Flip Game Java Python Note None
293 Flip Game II Java Python Note None
294 Find Median from Data Stream Java Python Note Hard
295 Best Meeting Point Java Python Note None
296 Serialize and Deserialize Binary Tree Java Python Note Hard
297 Binary Tree Longest Consecutive Sequence Java Python Note None
298 Bulls and Cows Java Python Note Medium
299 Longest Increasing Subsequence Java Python Note Medium
300 Remove Invalid Parentheses Java Python Note Hard

About


Languages

Language:Java 96.3%Language:C++ 2.7%Language:Python 0.9%