kid0607 / LintCode

Java Solutions to problems on LintCode/LeetCode

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Java Algorithm Problems

程序员的一天

从开始这个Github已经有将近两年时间, 很高兴这个repo可以帮到有需要的人. 我一直认为, 知识本身是无价的, 因此每逢闲暇, 我就会来维护这个repo, 给刷题的朋友们一些我的想法和见解. 下面来简单介绍一下这个repo:

README.md: 所有所做过的题目

ReviewPage.md: 所有题目的总结和归纳(不断完善中)

KnowledgeHash2.md: 对所做过的知识点的一些笔记

SystemDesign.md: 对系统设计的一些笔记

Future Milestone: 我准备将一些有意思的题目,做成视频的形式给大家参考

希望大家学习顺利, 对未来充满希望(程序员也是找到好老板的!) 有问题可以给我写邮件(wangdeve@gmail.com), 或者在GitHub上发issue给我.

Squence Problem Level Language Tags Video Tutorial
0 Anagrams.java Medium Java []
1 Binary Representation.java Hard Java []
2 Binary Tree Level Order Traversal II.java Medium Java []
3 Binary Tree Level Order Traversal.java Medium Java []
4 Binary Tree Longest Consecutive Sequence.java Medium Java []
5 Binary Tree Maximum Path Sum II.java Medium Java []
6 Binary Tree Right Side View.java Medium Java []
7 Binary Tree Serialization.java Medium Java []
8 Binary Tree Zigzag Level Order Traversal.java Medium Java []
9 ColorGrid.java Medium Java []
10 Combination Sum II.java Medium Java []
11 Combination Sum.java Medium Java []
12 Combinations.java Medium Java []
13 Construct Binary Tree from Inorder and Postorder Traversal.java Medium Java []
14 Container With Most Water.java Medium Java []
15 Convert Binary Search Tree to Doubly Linked List.java Medium Java [BST]
16 Copy List with Random Pointer.java Medium Java []
17 Count of Smaller Number before itself.java Hard Java []
18 Count of Smaller Number.java Medium Java []
19 Delete Digits.java Medium Java []
20 Encode and Decode Strings.java Medium Java []
21 Fast Power.java Medium Java []
22 Find the Connected Component in the Undirected Graph.java Medium Java []
23 Find the Weak Connected Component in the Directed Graph.java Medium Java []
24 Flatten 2D Vector.java Medium Java []
25 Fraction to Recurring Decimal.java Medium Java []
26 Generate Parentheses.java Medium Java []
27 Gray Code.java Medium Java []
28 Group Shifted Strings.java Easy Java []
29 H-Index II.java Medium Java []
30 H-Index.java Medium Java []
31 Hamming Distance.java Easy Java []
32 Happy Number.java Easy Java []
33 HashHeap.java Hard Java []
34 HashWithArray.java Easy Java []
35 HashWithCustomizedClass(LinkedList).java Medium Java []
36 Heapify.java Medium Java []
37 Heaters.java Easy Java []
38 Implement Trie (Prefix Tree).java Medium Java []
39 IndexMatch.java Easy Java []
40 Inorder Successor in Binary Search Tree.java Medium Java [BST]
41 Insert Interval.java Easy Java []
42 Insert Node in a Binary Search Tree .java Easy Java [BST]
43 Intersection of Two Arrays.java Easy Java []
44 Intersection of Two Linked Lists.java Easy Java [Linked List]
45 Interval Minimum Number.java Medium Java []
46 Interval Sum II.java Hard Java []
47 Interval Sum.java Medium Java []
48 Isomorphic Strings.java Easy Java []
49 Jewels and Stones.java Easy Java [Hash Table]
50 Kth Largest Element.java Medium Java []
51 Kth Smallest Element in a BST.java Medium Java [BST]
52 Kth Smallest Sum In Two Sorted Arrays.java Hard Java []
53 Longest Common Prefix.java Medium Java []
54 Longest Palindromic Substring.java Medium Java []
55 Longest Univalue Path.java Easy Java []
56 Longest Word in Dictionary.java Easy Java []
57 LRU Cache.java Hard Java []
58 Majority Number II.java Medium Java []
59 Majority Number III.java Medium Java []
60 Matrix Zigzag Traversal.java Easy Java []
61 Max Area of Island.java Easy Java []
62 Maximum Subarray III.java Hard Java []
63 Median of two Sorted Arrays.java Hard Java []
64 Merge k Sorted Arrays.java Medium Java []
65 Merge k Sorted Lists.java Medium Java []
66 Merge Sorted Array II.java N/A Java []
67 Minimum Absolute Difference in BST.java Easy Java [BST]
68 Minimum Height Trees.java Medium Java []
69 Minimum Subarray.java N/A Java []
70 Missing Ranges.java Medium Java []
71 Multiply Strings.java Medium Java []
72 Next Permutation.java Medium Java []
73 Nth to Last Node in List.java N/A Java []
74 Number Triangles.java N/A Java []
75 O(1) Check Power of 2.java N/A Java []
76 Paint Fence.java Easy Java []
77 Palindrome Permutation II.java Medium Java []
78 Partition Array by Odd and Even.java N/A Java []
79 Partition Array.java N/A Java []
80 Partition List.java Medium Java []
81 Pascal's Triangle II.java Easy Java []
82 Peeking Iterator.java Medium Java [BST]
83 Permutation Index.java Easy Java []
84 Permutation Sequence.java Medium Java []
85 Permutations.java Medium Java []
86 Populating Next Right Pointers in Each Node II.java Hard Java []
87 Product of Array Exclude Itself.java N/A Java []
88 QuickSort.java Easy Java []
89 Recover Rotated Sorted Array.java N/A Java []
90 Rehashing.java Medium Java []
91 Remove Duplicates from Sorted Array.java Easy Java []
92 Remove Duplicates from Sorted List II.java Medium Java []
93 Remove Duplicates from Sorted List.java Easy Java []
94 Remove Duplicates from Unsorted List.java N/A Java []
95 Remove Invalid Parentheses.java Hard Java []
96 Remove Node in Binary Search Tree.java Hard Java [BST]
97 Reorder List.java Medium Java []
98 Reshape the Matrix.java Easy Java []
99 Restore IP Addresses.java Medium Java []
100 Reverse String.java Easy Java []
101 Reverse Words in a String II.java Medium Java []
102 Reverse Words in a String.java Medium Java []
103 Roman to Integer.java Easy Java []
104 Rotate Image.java Medium Java []
105 Rotate List.java Medium Java []
106 Rotate String.java Easy Java []
107 Search a 2D Matrix II.java Medium Java []
108 Search a 2D Matrix.java Medium Java []
109 Search for a Range.java Medium Java []
110 Search Insert Position.java Easy Java []
111 Search Range in Binary Search Tree .java Medium Java [BST]
112 Search Rotated in Sorted Array II.java N/A Java []
113 Search Rotated in Sorted Array.java Hard Java []
114 Segment Tree Build II.java Medium Java []
115 Segment Tree Build.java Medium Java []
116 Segment Tree Modify.java Medium Java []
117 Segment Tree Query II.java Medium Java []
118 Segment Tree Query.java Medium Java []
119 Serilization and Deserialization Of Binary Tree.java N/A Java []
120 Shortest Word Distance.java Easy Java []
121 Single Number II.java Medium Java []
122 Single Number III.java Medium Java []
123 Single Number.java Easy Java []
124 Sliding Window Maximum.java Hard Java []
125 Sort Color.java Medium Java []
126 Sort Colors II.java N/A Java []
127 Sort Letters by Case.java N/A Java []
128 Sort List.java Medium Java []
129 Space Replacement.java N/A Java []
130 Stone Game.java N/A Java []
131 String Permutation.java Easy Java []
132 String to Integer(atoi).java Easy Java []
133 Strobogrammatic Number II.java Medium Java []
134 Strobogrammatic Number.java Easy Java []
135 Subarray Sum Closest.java Medium Java []
136 Subarray Sum.java Easy Java []
137 Subset.java Medium Java []
138 Subsets II.java Medium Java []
139 Summary Ranges.java Medium Java []
140 The Smallest Difference.java N/A Java []
141 Top K Frequent Elements.java Medium Java []
142 Top K Frequent Words.java Medium Java []
143 Topological Sorting.java Medium Java []
144 Total Occurrence of Target.java N/A Java []
145 Trailing Zeros.java N/A Java []
146 Tweaked Identical Binary Tree.java Easy Java [DFS, Tree]
147 Two Lists Sum.java N/A Java []
148 Two Strings Are Anagrams.java Easy Java []
149 Ugly Number II.java Medium Java []
150 Ugly Number.java Medium Java []
151 Unique Binary Search Tree II.java Medium Java [BST]
152 Unique Characters.java N/A Java []
153 Unique Word Abbreviation.java Medium Java []
154 Valid Parentheses.java Easy Java []
155 Valid Sudoku.java Easy Java []
156 Word Break.java Medium Java []
157 Word Ladder II.java Hard Java []
158 Word Ladder.java Medium Java []
159 Word Pattern.java Easy Java []
160 Zigzag Iterator.java Medium Java [BST]
161 Find Anagram Mappings.java Easy Java [Hash Table]
162 Judge Route Circle.java Easy Java [String]
163 Island Perimeter.java Easy Java [Hash Table]
164 First Unique Character in a String.java Easy Java [Hash Table, String]
165 Power of Three.java Easy Java [Math]
166 Plus One.java Easy Java [Array, Math]
167 Power of Two.java Easy Java [Bit Manipulation, Math]
168 Reverse Vowels of a String.java Easy Java [String, Two Pointers]
169 Guess Number Higher or Lower.java Easy Java [Binary Search]
170 Encode and Decode TinyURL.java Medium Java [Hash Table, Math]
171 Wiggle Sort.java Medium Java [Array, Sort]
172 Queue Reconstruction by Height.java Medium Java [Greedy]
173 2 Sum.java Easy Java [Array, Hash Table]
174 2 Sum II - Input array is sorted.java Medium Java [Array, Binary Search, Two Pointers]
175 2 Sum II.java Medium Java [Array, Binary Search, Two Pointers]
176 Coin Change.java Medium Java [DP, Memoization, Sequence DP]
177 Maximum Product Subarray.java Medium Java [Array, DP]
178 3 Sum Closest.java Medium Java [Array, Two Pointers]
179 Triangle Count.java Medium Java [Array]
180 3 Sum.java Medium Java [Array, Two Pointers]
181 4 Sum.java Medium Java [Hash Table]
182 k Sum.java Hard Java [DP]
183 Longest Increasing Subsequence.java Medium Java [Binary Search, Coordinate DP, DP, Memoization, Sequence DP]
184 Unique Binary Search Tree.java Medium Java [BST, DP, Tree]
185 Trim a Binary Search Tree.java Easy Java [BST, Tree]
186 Unique Paths II.java Medium Java [Array, Coordinate DP, DP]
187 Bomb Enemy.java Medium Java [Coordinate DP, DP]
188 3 Sum Smaller.java Medium Java [Array, Two Pointers]
189 Array Partition I.java Easy Java [Array]
190 1-bit and 2-bit Characters.java Easy Java [Array]
191 Non-decreasing Array.java Easy Java [Array]
192 Max Consecutive Ones.java Easy Java [Array]
193 Find All Numbers Disappeared in an Array.java Easy Java [Array]
194 Maximum Average Subarray I.java Easy Java [Array]
195 Largest Number At Least Twice of Others.java Easy Java [Array]
196 Toeplitz Matrix.java Easy Java [Array]
197 Sum of Two Integers.java Easy Java [Bit Manipulation]
198 Swap Bits.java Easy Java [Bit Manipulation]
199 Update Bits.java Medium Java [Bit Manipulation]
200 Maximum XOR of Two Numbers in an Array.java Medium Java [Bit Manipulation, Trie]
201 Perfect Squares.java Medium Java [BFS, DP, Math, Partition DP]
202 Backpack VI.java Medium Java [Backpack DP, DP]
203 Copy Books.java Hard Java [Binary Search, DP, Partition DP]
204 Valid Perfect Square.java Review Java [Binary Search, Math]
205 Intersection of Two Arrays II.java Easy Java [Binary Search, Hash Table, Sort, Two Pointers]
206 Longest Palindromic Subsequence.java Medium Java [DP, Interval DP, Memoization]
207 Scramble String.java Hard Java [DP, Interval DP, String]
208 Binary Search Tree Iterator.java Medium Java [BST, Design, Stack, Tree]
209 Flatten Nested List Iterator.java Medium Java [Design, Stack]
210 Best Time to Buy and Sell Stock with Cooldown.java Medium Java [DP]
211 Find Peak Element.java Medium Java [Array, Binary Search]
212 Longest Common Subsequence.java Medium Java [DP, Double Sequence DP]
213 Interleaving String.java Hard Java [DP, String]
214 Letter Combinations of a Phone Number.java Medium Java [Backtracking, String]
215 Edit Distance.java Hard Java [DP, Double Sequence DP, String]
216 Distinct Subsequences.java Hard Java [DP, String]
217 Regular Expression Matching.java Review Java [Backtracking, DP, String]
218 Majority Element.java Easy Java [Array, Bit Manipulation, Divide and Conquer]
219 Wildcard Matching.java Hard Java [Backtracking, DP, Greedy, String]
220 Ones and Zeroes.java Hard Java [DP]
221 Pow(x,n).java Medium Java [Binary Search, Math]
222 Word Break II.java Review Java [Backtracking, DP]
223 Nested List Weight Sum.java Easy Java [DFS]
224 Same Tree.java Easy Java [DFS, Tree]
225 Convert Sorted Array to Binary Search Tree.java Easy Java [DFS, Tree]
226 Binary Tree Maximum Path Sum.java Review Java [DFS, Tree]
227 Construct Binary Tree from Inorder and Preorder Traversal.java Medium Java [Array, DFS, Tree]
228 Path Sum.java Easy Java [DFS, Tree]
229 Add Binary.java Easy Java [Math, String]
230 Add Digits.java Easy Java [Math]
231 Add Two Numbers.java Medium Java [Linked List, Math]
232 Add Two Numbers II.java Medium Java [Linked List]
233 Balanced Binary Tree.java Medium Java [DFS, Tree]
234 Valid Anagram.java Easy Java [Hash Table, Sort]
235 Populating Next Right Pointers in Each Node.java Medium Java [DFS, Tree]
236 Validate Binary Search Tree.java Medium Java [BST, DFS, Tree]
237 Convert Sorted List to Binary Search Tree.java Medium Java [DFS, Linked List]
238 Flatten Binary Tree to Linked List.java Medium Java [Binary Tree, DFS]
239 Binary Tree Paths.java Easy Java [Binary Tree, DFS]
240 Minimum Size Subarray Sum.java Medium Java [Array, Binary Search, Two Pointers]
241 Clone Graph.java Medium Java [BFS, DFS, Graph]
242 Longest Substring Without Repeating Characters.java Medium Java [Hash Table, String, Two Pointers]
243 Minimum Window Substring.java Hard Java [Hash Table, String, Two Pointers]
244 Linked List Cycle.java Easy Java [Linked List, Two Pointers]
245 Remove Nth Node From End of List.java Medium Java [Linked List, Two Pointers]
246 Longest Substring with At Most K Distinct Characters.java Medium Java [Hash Table, String]
247 Linked List Cycle II.java Medium Java [Linked List, Two Pointers]
248 Kth Smallest Number in Sorted Matrix.java Medium Java [Binary Search, Heap]
249 Find Minimum in Rotated Sorted Array.java Medium Java [Array, Binary Search]
250 Find Minimum in Rotated Sorted Array II.java Hard Java [Array, Binary Search]
251 Connecting Graph.java Medium Java [Union Find]
252 Connecting Graph II.java Medium Java [Union Find]
253 Connecting Graph III.java Medium Java [Union Find]
254 Number of Islands.java Medium Java [BFS, DFS, Union Find]
255 Number of Islands II.java Hard Java [Union Find]
256 Graph Valid Tree.java Medium Java [BFS, DFS, Graph, Union Find]
257 Surrounded Regions.java Review Java [BFS, DFS, Union Find]
258 Implement Trie.java Medium Java [Design, Trie]
259 Add and Search Word.java Medium Java [Backtracking, Design, Trie]
260 Word Search II.java Hard Java [Backtracking, DFS, Trie]
261 Word Search.java Medium Java [Array, Backtracking]
262 Word Squares.java Hard Java [Backtracking, Trie]
263 Trapping Rain Water.java Hard Java [Array, Stack, Two Pointers]
264 Trapping Rain Water II.java Hard Java [BFS, Heap]
265 Data Stream Median.java Hard Java [Design, Heap]
266 Sliding Window Median.java Hard Java [Design, Heap]
267 Min Stack.java Easy Java [Design, Stack]
268 Implement Queue using Stacks.java Easy Java [Design, Stack]
269 Expression Expand.java Medium Java [DFS, Divide and Conquer, Stack]
270 Largest Rectangle in Histogram.java Hard Java [Array, Monotonous Stack, Stack]
271 Maximum Binary Tree.java Medium Java [Stack, Tree]
272 Reverse Integer.java Easy Java [Math]
273 Swap Nodes in Pairs.java Medium Java [Linked List]
274 Find Peak Element II.java Hard Java [Binary Search, DFS, Divide and Conquer]
275 Sqrt(x).java Easy Java [Binary Search, Math]
276 First Bad Version.java Easy Java [Binary Search]
277 Wood Cut.java Medium Java [Binary Search]
278 Find the Duplicate Number.java Medium Java [Array, Binary Search, Two Pointers]
279 Palindrome Pairs.java Hard Java [Hash Table, String, Trie]
280 Game of Life.java Medium Java [Array]
281 Maximum Average Subarray II.java Review Java [Array, Binary Search]
282 Meeting Rooms.java Easy Java [Sort, Sweep Line]
283 Number of Airplane in the sky.java Medium Java [Array, Interval, Sort, Sweep Line]
284 Meeting Rooms II.java Medium Java [Greedy, Heap, Sort, Sweep Line]
285 Building Outline.java Review Java [Binary Indexed Tree, Divide and Conquer, Heap, Segment Tree, Sweep Line]
286 Unique Path.java Medium Java [Array, Coordinate DP, DP]
287 Maximal Rectangle.java Hard Java [Array, DP, Hash Table, Stack]
288 Maximal Square.java Medium Java [Coordinate DP, DP]
289 Longest Increasing Path in a Matrix.java Hard Java [DFS, DP, Memoization, Topological Sort]
290 Coins in a Line.java Medium Java [DP, Game Theory, Greedy]
291 Coins in a Line II.java Medium Java [Array, DP, Game Theory, Memoization, MiniMax]
292 Binary Tree Inorder Traversal.java Easy Java [Hash Table, Stack, Tree]
293 Path Sum II.java Easy Java [DFS, Tree]
294 Binary Tree Postorder Traversal.java Medium Java [Stack, Tree, Two Stacks]
295 Change to Anagram.java Easy Java [String]
296 Classical Binary Search.java Easy Java [Binary Search]
297 Climbing Stairs.java Easy Java [DP, Memoization, Sequence DP]
298 Coins in a Line III.java Hard Java [Array, DP, Game Theory, Interval DP, Memoization]
299 Closest Binary Search Tree Value.java Easy Java [BST, Binary Search, Tree]
300 Compare Version Numbers.java Medium Java [String]
301 Count Complete Tree Nodes.java Medium Java [Binary Search, Tree]
302 Course Schedule.java Medium Java [BFS, DFS, Graph, Topological Sort]
303 Course Schedule II.java Medium Java [BFS, DFS, Graph, Topological Sort]
304 Alien Dictionary.java Hard Java [BFS, Backtracking, DFS, Graph, Topological Sort]
305 Binary Tree Preorder Traversal.java Easy Java [BFS, DFS, Stack, Tree]
306 Closest Number in Sorted Array.java Easy Java [Binary Search]
307 Complete Binary Tree.java Easy Java [BFS, DFS, Tree]
308 Compare Strings.java Easy Java [String]
309 Contains Duplicate.java Easy Java [Array, Hash Table]
310 Contains Duplicate II.java Easy Java [Array, Hash Table]
311 Contains Duplicate III.java Medium Java [BST]
312 Burst Balloons.java Hard Java [DP, Divide and Conquer, Interval DP, Memoization]
313 Nim Game.java Easy Java [Brainteaser, DP, Game Theory]
314 Convert Integer A to Integer B.java Easy Java [Bit Manipulation]
315 Cosine Similarity.java Easy Java [Basic Implementation]
316 Count 1 in Binary.java Easy Java [Bit Manipulation]
317 Count and Say.java Easy Java [Basic Implementation, String]
318 One Edit Distance.java Medium Java [String]
319 K Edit Distance.java Hard Java [DP, Double Sequence DP, Trie]
320 Jump Game.java Medium Java [Array, DP, Greedy]
321 Coin Change 2.java Medium Java [DP, Sequence DP]
322 Paint House.java Easy Java [DP, Sequence DP]
323 Decode Ways.java Medium Java [DP, Partition DP, String]
324 Longest Continuous Increasing Subsequence.java Easy Java [Array, Coordinate DP, DP]
325 Minimum Path Sum.java Medium Java [Array, Coordinate DP, DP]
326 Counting Bits.java Medium Java [Bit Manipulation, Bitwise DP, DP]
327 Continuous Subarray Sum.java Medium Java [Coordinate DP, DP, Math]
328 House Robber.java Easy Java [DP, Sequence DP]
329 House Robber II.java Medium Java [DP, Sequence DP]
330 House Robber III.java Medium Java [DFS, DP, Status DP, Tree]
331 Paint House II.java Hard Java [DP, Sequence DP]
332 Best Time to Buy and Sell Stock I.java Easy Java [Array, DP, Sequence DP]
333 Best Time to Buy and Sell Stock II.java Easy Java [Array, DP, Greedy, Sequence DP]
334 Best Time to Buy and Sell Stock III .java Hard Java [Array, DP, Sequence DP]
335 Best Time to Buy and Sell Stock IV.java Hard Java [DP, Sequence DP]
336 Russian Doll Envelopes.java Hard Java [Binary Search, Coordinate DP, DP]
337 Jump Game II.java Hard Java [Array, Coordinate DP, DP, Greedy]
338 Palindrome Partitioning.java Medium Java [Backtracking, DFS]
339 Permutation in String.java Medium Java [Two Pointers]
340 Permutations II.java Medium Java [Backtracking]
341 Shuffle an Array.java Medium Java [Permutation]
342 Find All Anagrams in a String.java Easy Java [Hash Table]
343 Group Anagrams.java Medium Java [Hash Table, String]
344 Backpack.java Medium Java [Backpack DP, DP]
345 Backpack II.java Medium Java [Backpack DP, DP]
346 Backpack V.java Medium Java [Backpack DP, DP]
347 Count Primes.java Easy Java [Hash Table, Math]
348 Delete Node in a Linked List.java Easy Java [Linked List]
349 Excel Sheet Column Number.java Easy Java [Math]
350 Excel Sheet Column Title.java Easy Java [Math]
351 Flip Game.java Easy Java [String]
352 Flip Game II.java Review Java [DFS, backtracking]
353 Expression Tree Build.java Hard Java [Binary Tree, Expression Tree, Stack]
354 Expression Evaluation.java Hard Java [Binary Tree, DFS, Expression Tree, Stack]
355 Convert Expression to Polish Notation.java Hard Java [Binary Tree, DFS, Expression Tree, Stack]
356 Convert Expression to Reverse Polish Notation.java Hard Java [Binary Tree, DFS, Expression Tree, Stack]
357 Evaluate Reverse Polish Notation.java Medium Java [Stack]
358 Decode Ways II.java Hard Java [DP, Partition DP]
359 Palindrome Partitioning II.java Hard Java [DP, Partition DP]
360 Backpack III.java Hard Java [Backpack DP, DP]
361 First Missing Positive.java Hard Java [Array]
362 Gas Station.java Medium Java [Greedy]
363 Implement strStr().java Easy Java [String, Two Pointers]
364 Insertion Sort List.java Medium Java [Linked List, Sort]
365 Integer to English Words.java Hard Java [Math, String]
366 Interleaving Positive and Negative Numbers.java Medium Java [Two Pointers]
367 Largest Number.java Medium Java [Sort]
368 Last Position of Target.java Easy Java [Binary Search]
369 Length of Last Word.java Easy Java [String]
370 Longest Common Substring.java Medium Java [DP, Double Sequence DP, String]
371 Longest Consecutive Sequence.java Medium Java [Array, Hash Table]
372 Longest Increasing Continuous subsequence.java Easy Java [Array, Coordinate DP, DP]
373 Longest Increasing Continuous subsequence II.java Medium Java [Array, Coordinate DP, DP, Memoization]
374 N-Queens.java Hard Java [Backtracking]
375 N-Queens II.java Hard Java [Backtracking]
376 Longest Words.java Easy Java [Hash Map, String]
377 Maximum Subarray.java Easy Java [Array, DP, Divide and Conquer, Sequence DP]
378 Maximum Subarray II.java Medium Java [Array, DP, Greedy, Sequence DP]
379 Median.java Easy Java [Array, Quick Select, Quick Sort]
380 Merge Sorted Array.java Easy Java [Array, Two Pointers]
381 Middle of Linked List.java Easy Java [Linked List]
382 Singleton.java Easy Java [Design]
383 Remove Linked List Elements.java Easy Java [Linked List]
384 Fibonacci.java Easy Java [DP, Math, Memoization]
385 Palindrome Linked List.java Easy Java [Linked List, Two Pointers]
386 Reverse Linked List.java Easy Java [Linked List]
387 Reverse Linked List II .java Medium Java [Linked List]
388 Palindrome Permutation.java Easy Java [Hash Table]
389 Valid Palindrome.java Easy Java [String, Two Pointers]
390 Implement Stack using Queues.java Easy Java [Design, Stack]
391 Implement Stack.java Easy Java [Stack]
392 Invert Binary Tree.java Easy Java [BFS, DFS, Tree]
393 Maximum Depth of Binary Tree.java Easy Java [DFS, Tree]
394 Minimum Depth of Binary Tree.java Easy Java [BFS, DFS, Tree]
395 Symmetric Tree.java Easy Java [BFS, DFS, Tree]
396 Merge Two Binary Trees.java Easy Java [DFS, Tree]
397 Subtree.java Easy Java [DFS, Tree]
398 Lowest Common Ancestor of a Binary Tree.java Medium Java [DFS, Tree]
399 Lowest Common Ancestor II.java Easy Java [Hash Table, Tree]
400 Lowest Common Ancestor of a Binary Search Tree.java Medium Java [BST, DFS, Tree]
401 Merge Intervals.java Medium Java [Array, Sort, Sweep Line]
402 Hash Function.java Easy Java [Hash Table]
403 Merge Two Sorted Lists.java Easy Java [Linked List]

About

Java Solutions to problems on LintCode/LeetCode


Languages

Language:Java 100.0%