Skip to content

baba216/LintCode

 
 

Repository files navigation

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

About

Java Solutions to problems on LintCode/LeetCode

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Java 100.0%