LeetCode LintCode 干货全集

《LeetCode LintCode 干货全集》

事情是这样的. 下面这个就是我在GitHub上面自动生成的LintCode表格. 当时先做的是LintCode, 大约有150来道。

现在转手来做LeetCode,作为复习和巩固,每一篇都会详细把要点摘录一下。而过去做过的这些LintCode, 就不一片片更新拉,一口气放在这篇文章里面。

更新到300多时,已经进入另一个阶段啦。我之前还有做过另外一个专题,叫做ReviewPage, 复习页面,大体上是把做过的题目用中文总结了一遍,方便未来在复习时候可以浏览。在简书这里也贴上一贴吧:ReviewPage复习总结页

所有内容都来自我的GitHub:
https://github.com/awangdev/LintCode

Java Algorithm Problems

程序员的一天

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

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

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

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

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

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

在这里! 安利一下自己的副业

介绍一下自己! 大家在YouTube或者B站都可以搜到我: “张土汪”

最近一份关于工作的影片: 程序猿二月工作爆肝回忆录!

最近我开始在做自己的Youtube Channel, 虽然还没有定下任何方向, 但是目前我会做几部分的内容:

  • 工作经验的分享/目前学习经历: 当然会跟Software Engineer比较相关
  • 在美国的生活/学生时代的经历, vlog等
  • 个人的兴趣爱好: 唱歌!!!

希望在这里参考刷题经验时, 可以去关注我的Channel! 有任何对在美国工作的疑问, 疑惑, 都可以给我留言/私信/邮件.

《LeetCode LintCode 干货全集》 程序猿二月工作爆肝回忆录!

希望大家学习顺利, 对未来充满希望!
有问题可以给我写邮件(wangdeve@gmail.com), 或者在GitHub上发issue给我.

下面进入干货索引.

SequenceProblem
0Count of Smaller Number before itself.java
1Evaluate Division.java
2Fraction to Recurring Decimal.java
3Gray Code.java
4Hamming Distance.java
5Happy Number.java
6HashWithArray.java
7Heaters.java
8IndexMatch.java
9Insert Node in a Binary Search Tree .java
10Jewels and Stones.java
11Kth Smallest Sum In Two Sorted Arrays.java
12LFU Cache.java
13Longest Univalue Path.java
14Majority Number II.java
15Majority Number III.java
16Matrix Zigzag Traversal.java
17Maximum Subarray III.java
18Minimum Absolute Difference in BST.java
19Minimum Height Trees.java
20Missing Ranges.java
21Next Permutation.java
22O(1) Check Power of 2.java
23Palindrome Permutation II.java
24Partition Array by Odd and Even.java
25Pascal’s Triangle II.java
26Permutation Index.java
27Permutation Sequence.java
28Prefix and Suffix Search.java
29Product of Array Exclude Itself.java
30Recover Rotated Sorted Array.java
31Remove Duplicates from Unsorted List.java
32Remove Node in Binary Search Tree.java
33Reshape the Matrix.java
34Reverse String.java
35Rotate Image.java
36Search in Rotated Sorted Array II.java
37Search Insert Position.java
38Shortest Word Distance.java
39Single Number II.java
40Single Number III.java
41Single Number.java
42Space Replacement.java
43Stone Game.java
44String Permutation.java
45Subarray Sum II.java
46The Smallest Difference.java
47Total Occurrence of Target.java
48Trailing Zeros.java
49Two Lists Sum.java
50Two Strings Are Anagrams.java
51Valid Sudoku.java
52Word Pattern.java
53Zigzag Iterator.java
54Find Anagram Mappings.java
55Judge Route Circle.java
56Island Perimeter.java
57Power of Three.java
58Plus One.java
59Power of Two.java
60Reverse Vowels of a String.java
61Guess Number Higher or Lower.java
62Encode and Decode TinyURL.java
63Wiggle Sort.java
64Queue Reconstruction by Height.java
65Two Sum II – Input array is sorted.java
662 Sum II.java
67Coin Change.java
68Maximum Product Subarray.java
693 Sum Closest.java
70Triangle Count.java
713Sum.java
72k Sum.java
73Unique Binary Search Tree.java
74Trim a Binary Search Tree.java
75Unique Paths II.java
76Bomb Enemy.java
773Sum Smaller.java
78Array Partition I.java
791-bit and 2-bit Characters.java
80Non-decreasing Array.java
81Max Consecutive Ones.java
82Find All Numbers Disappeared in an Array.java
83Maximum Average Subarray I.java
84Largest Number At Least Twice of Others.java
85Toeplitz Matrix.java
86Sum of Two Integers.java
87Swap Bits.java
88Update Bits.java
89Maximum XOR of Two Numbers in an Array.java
90Perfect Squares.java
91Backpack VI.java
92Copy Books.java
93Valid Perfect Square.java
94Intersection of Two Arrays II.java
95Scramble String.java
96Binary Search Tree Iterator.java
97Flatten Nested List Iterator.java
98Best Time to Buy and Sell Stock with Cooldown.java
99Find Peak Element.java
100Longest Common Subsequence.java
101Interleaving String.java
102Letter Combinations of a Phone Number.java
103Edit Distance.java
104Distinct Subsequences.java
105Majority Element.java
106Ones and Zeroes.java
107Pow(x, n).java
108Word Break II.java
109Nested List Weight Sum.java
110Same Tree.java
111Convert Sorted Array to Binary Search Tree.java
112Construct Binary Tree from Preorder and Inorder Traversal.java
113Add Digits.java
114Add Two Numbers.java
115Add Two Numbers II.java
116Balanced Binary Tree.java
117Valid Anagram.java
118Populating Next Right Pointers in Each Node.java
119Validate Binary Search Tree.java
120Convert Sorted List to Binary Search Tree.java
121Flatten Binary Tree to Linked List.java
122Binary Tree Paths.java
123Minimum Size Subarray Sum.java
124Longest Substring Without Repeating Characters.java
125Minimum Window Substring.java
126Linked List Cycle.java
127Remove Nth Node From End of List.java
128Longest Substring with At Most K Distinct Characters.java
129Linked List Cycle II.java
130Kth Smallest Element in a Sorted Matrix.java
131Find Minimum in Rotated Sorted Array.java
132Find Minimum in Rotated Sorted Array II.java
133Connecting Graph.java
134Connecting Graph II.java
135Connecting Graph III.java
136Number of Islands.java
137Number of Islands II.java
138Surrounded Regions.java
139Implement Trie (Prefix Tree).java
140Add and Search Word – Data structure design.java
141Word Search II.java
142Word Search.java
143Word Squares.java
144Trapping Rain Water.java
145Min Stack.java
146Implement Queue using Stacks.java
147Decode String.java
148Largest Rectangle in Histogram.java
149Maximum Binary Tree.java
150Reverse Integer.java
151Swap Nodes in Pairs.java
152Find Peak Element II.java
153Sqrt(x).java
154First Bad Version.java
155Wood Cut.java
156Find the Duplicate Number.java
157Palindrome Pairs.java
158Game of Life.java
159Maximum Average Subarray II.java
160Meeting Rooms.java
161Number of Airplane in the sky.java
162Meeting Rooms II.java
163The Skyline Problem.java
164Unique Path.java
165Maximal Rectangle.java
166Maximal Square.java
167Longest Increasing Path in a Matrix.java
168Coins in a Line.java
169Coins in a Line II.java
170Binary Tree Inorder Traversal.java
171Binary Tree Postorder Traversal.java
172Change to Anagram.java
173Classical Binary Search.java
174Climbing Stairs.java
175Coins in a Line III.java
176Closest Binary Search Tree Value.java
177Compare Version Numbers.java
178Count Complete Tree Nodes.java
179Course Schedule.java
180Course Schedule II.java
181Binary Tree Preorder Traversal.java
182Closest Number in Sorted Array.java
183Complete Binary Tree.java
184Compare Strings.java
185Contains Duplicate.java
186Contains Duplicate II.java
187Contains Duplicate III.java
188Burst Balloons.java
189Nim Game.java
190Convert Integer A to Integer B.java
191Cosine Similarity.java
192Count 1 in Binary.java
193Count and Say.java
194K Edit Distance.java
195Jump Game.java
196Coin Change 2.java
197Paint House.java
198Decode Ways.java
199Longest Continuous Increasing Subsequence.java
200Minimum Path Sum.java
201Counting Bits.java
202Continuous Subarray Sum.java
203House Robber.java
204House Robber II.java
205House Robber III.java
206Paint House II.java
207Best Time to Buy and Sell Stock III.java
208Best Time to Buy and Sell Stock IV.java
209Russian Doll Envelopes.java
210Permutation in String.java
211Permutations II.java
212Shuffle an Array.java
213Find All Anagrams in a String.java
214Group Anagrams.java
215Backpack.java
216Backpack II.java
217Backpack V.java
218Count Primes.java
219Delete Node in a Linked List.java
220Excel Sheet Column Number.java
221Excel Sheet Column Title.java
222Flip Game.java
223Expression Tree Build.java
224Expression Evaluation.java
225Convert Expression to Polish Notation.java
226Convert Expression to Reverse Polish Notation.java
227Evaluate Reverse Polish Notation.java
228Decode Ways II.java
229Palindrome Partitioning II.java
230Backpack III.java
231First Missing Positive.java
232Implement strStr().java
233Insertion Sort List.java
234Interleaving Positive and Negative Numbers.java
235Largest Number.java
236Last Position of Target.java
237Length of Last Word.java
238Longest Common Substring.java
239Longest Increasing Continuous subsequence.java
240Longest Increasing Continuous subsequence II.java
241N-Queens.java
242N-Queens II.java
243Maximum Subarray.java
244Maximum Subarray II.java
245Median.java
246Middle of Linked List.java
247Singleton.java
248Remove Linked List Elements.java
249Fibonacci.java
250Palindrome Linked List.java
251Reverse Linked List.java
252Reverse Linked List II .java
253Intersection of Two Linked Lists.java
254Palindrome Permutation.java
255Valid Palindrome.java
256Implement Stack using Queues.java
257Implement Stack.java
258Invert Binary Tree.java
259Maximum Depth of Binary Tree.java
260Minimum Depth of Binary Tree.java
261Symmetric Tree.java
262Tweaked Identical Binary Tree.java
263Merge Two Binary Trees.java
264Subtree.java
265Lowest Common Ancestor of a Binary Tree.java
266Lowest Common Ancestor II.java
267Lowest Common Ancestor of a Binary Search Tree.java
268Hash Function.java
269Merge Two Sorted Lists.java
270Missing Number.java
271LRU Cache.java
272Remove Duplicates from Sorted Array.java
273Remove Duplicates from Sorted Array II.java
274Remove Duplicates from Sorted List.java
275Remove Duplicates from Sorted List II.java
276QuickSort.java
277MergeSort.java
278Longest Word in Dictionary.java
279Binary Tree Level Order Traversal.java
280Binary Tree Level Order Traversal II.java
281Binary Tree Longest Consecutive Sequence II.java
282Binary Tree Maximum Path Sum.java
283Path Sum.java
284Path Sum II.java
285Path Sum III.java
286Rotate String.java
287Combinations.java
288Combination Sum IV.java
289Binary Tree Right Side View.java
290Binary Tree Maximum Path Sum II.java
291Rotate List.java
292Basic Calculator.java
293Longest Consecutive Sequence.java
294Binary Tree Longest Consecutive Sequence.java
295Number of Connected Components in an Undirected Graph.java
296Next Closest Time.java
297Serialize and Deserialize Binary Tree.java
298Partition Array.java
299Word Ladder.java
300Unique Word Abbreviation.java
301Unique Binary Search Tree II.java
302Ugly Number.java
303Top K Frequent Words.java
304Segment Tree Build.java
305Segment Tree Build II.java
306Segment Tree Query.java
307Segment Tree Modify.java
308Segment Tree Query II.java
309Count of Smaller Numbers After Self.java
310ColorGrid.java
311Container With Most Water.java
312Copy List with Random Pointer.java
313Encode and Decode Strings.java
314Fast Power.java
315Find the Connected Component in the Undirected Graph.java
316HashWithCustomizedClass(LinkedList).java
317Interval Minimum Number.java
318Interval Sum.java
319Kth Smallest Element in a BST.java
320Longest Common Prefix.java
321Majority Element II.java
322Partition List.java
323Peeking Iterator.java
324Rehashing.java
325Reorder List.java
326Restore IP Addresses.java
327Reverse Words in a String.java
328Reverse Words in a String II.java
329Reverse Words in a String III.java
330Search a 2D Matrix.java
331Search a 2D Matrix II.java
332Search for a Range.java
333Search Range in Binary Search Tree .java
334Merge Sorted Array II.java
335Nth to Last Node in List.java
336Sort List.java
337Summary Ranges.java
338Topological Sorting.java
339Remove Duplicate Letters.java
340Spiral Matrix.java
341Expression Add Operators.java
342Insert Interval.java
343Shortest Palindrome.java
344Two Sum.java
345K Empty Slots.java
346Count of Range Sum.java
347Max Sum of Rectangle No Larger Than K.java
348Perfect Rectangle.java
349Construct Binary Tree from Inorder and Postorder Traversal.java
350Generate Parentheses.java
351Strobogrammatic Number II.java
352Flip Game II.java
353Max Area of Island.java
354Max Points on a Line.java
355Number of Digit One.java
356Binary Representation.java
357Palindrome Partitioning.java
358Recover Binary Search Tree.java
359Subarray Sum.java
360Submatrix Sum.java
361Longest Palindromic Substring.java
362Longest Palindromic Subsequence.java
363Jump Game II.java
364Gas Station.java
365Triangles.java
366Range Sum Query – Immutable.java
367Longest Valid Parentheses.java
368Remove Invalid Parentheses.java
369Merge Intervals.java
370H-Index.java
371H-Index II.java
372Sort Colors.java
373Sort Colors II.java
374Sort Letters by Case.java
375Subarray Sum Closest.java
376Task Scheduler.java
377Rearrange String k Distance Apart.java
378Exam Room.java
379Anagrams.java
380Path Sum IV.java
381Longest Words.java
382Unique Characters.java
383Number Of Corner Rectangles.java
384Palindromic Substrings.java
385Multiply Strings.java
386Subsets.java
387Subsets II.java
388Combination Sum.java
389Combination Sum II.java
390Combination Sum III.java
391Product of Array Except Self.java
392Total Hamming Distance.java
393Smallest Subtree with all the Deepest Nodes.java
394Binary Gap.java
395Subarray Sum Equals K.java
396Maximize Distance to Closest Person.java
397Simplify Path.java
398Convert Binary Search Tree to Sorted Doubly Linked List (extra space).java
399Paint Fence.java
400Binary Tree Zigzag Level Order Traversal.java
401Word Break.java
402Best Time to Buy and Sell Stock.java
403Best Time to Buy and Sell Stock II.java
404Longest Increasing Subsequence.java
405Best Time to Buy and Sell Stock with Transaction Fee.java
406Random Pick Index.java
407Find the Celebrity.java
408Sparse Matrix Multiplication.java
409Brick Wall.java
410Exclusive Time of Functions.java
411Friends Of Appropriate Ages.java
412Target Sum.java
413Maximum Size Subarray Sum Equals k.java
414Contiguous Array.java
415Line Reflection.java
416Insert Delete GetRandom O(1).java
417Number of Longest Increasing Subsequence.java
418Minimum Swaps To Make Sequences Increasing.java
419Binary Tree Vertical Order Traversal.java
420Populating Next Right Pointers in Each Node II.java
421Search in Rotated Sorted Array.java
422Minimum Subarray.java
423Valid Number.java
424Find the Weak Connected Component in the Directed Graph.java
425Accounts Merge.java
426Bricks Falling When Hit.java
427Interval Sum II.java
428Count of Smaller Number.java
429HashHeap.java
430My Calendar I.java
431Reverse Pairs.java
432Trapping Rain Water II.java
433Kth Largest Element in an Array.java
434Merge k Sorted Lists.java
435Merge k Sorted Arrays.java
436Heapify.java
437Top K Frequent Elements.java
438Ugly Number II.java
439Find Median from Data Stream.java
440Sliding Window Median.java
441Inorder Successor in BST.java
442Subtree of Another Tree.java
443Two Sum IV – Input is a BST.java
444Read N Characters Given Read4.java
445Design Search Autocomplete System.java
446Walls and Gates.java
447Merge Sorted Array.java
448Integer to English Words.java
449Alien Dictionary.java
450Valid Palindrome II.java
451Convert Binary Search Tree to Sorted Doubly Linked List.java
452Word Ladder II.java
453Moving Average from Data Stream.java
454Move Zeroes.java
455Flood Fill.java
456Diameter of Binary Tree.java
457Backspace String Compare.java
458Text Justification.java
459Read N Characters Given Read4 II – Call multiple times.java
460Frog Jump.java
461Longest Substring with At Most Two Distinct Characters.java
462Shortest Distance from All Buildings.java
463String to Integer (atoi).java
464Roman to Integer.java
465Intersection of Two Arrays.java
466Strobogrammatic Number.java
467Valid Parentheses.java
468First Unique Character in a String.java
469Add Binary.java
470Clone Graph.java
471Sliding Window Maximum.java
472Median of Two Sorted Arrays.java
473Permutations.java
474One Edit Distance.java
4754Sum.java
476Bus Routes.java
477Sliding Puzzle.java
478Isomorphic Strings.java
479Cracking the Safe.java
480Redundant Connection.java
481Graph Valid Tree.java
482Redundant Connection II.java
483The Maze.java
484The Maze II.java
485The Maze III.java
486Predict the Winner.java
487Next Greater Element I.java
488Group Shifted Strings.java
489Delete Digits.java
490Flatten 2D Vector.java
491The Spiral Matrix II.java
492Regular Expression Matching.java
493Wildcard Matching.java
494Robot Room Cleaner.java
495Maximum Vacation Days.java
    原文作者:张土汪
    原文地址: https://www.jianshu.com/p/c458198aff5f
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞