TopInterview.md 14.1 KB
Newer Older
L
liu13 已提交
1 2 3 4 5 6 7 8 9 10
### Top Interview Questions


| \# | Problems | Difficulty | Solution |
|----|----------|-----------|------|
| 001  | [Two_Sum](https://leetcode.com/problems/two-sum/)  | Easy | [Java](./code/lc1.java)
| 002  | [Add Two Numbers](https://leetcode.com/problems/add-two-numbers/) |Medium| [Java](./code/lc2.java)
| 003  | [Longest Substring Without Repeating Characters](https://leetcode.com/problems/longest-substring-without-repeating-characters/) | Medium | [Java](./code/lc3.java)
| 004  | [Median of Two Sorted Arrays](https://leetcode.com/problems/median-of-two-sorted-arrays) | Hard | [Java](./code/lc4.java)
| 005  | [Longest Palindromic Substring](https://leetcode.com/problems/longest-palindromic-substring/) |Medium|[Java](./code/lc5.java)
L
liu13 已提交
11 12
| 007  | [Reverse Integer](https://leetcode.com/problems/reverse-integer/) |Easy|[Java](./code/lc7.java)
| 008  | [String to Integer (atoi)](https://leetcode.com/problems/string-to-integer-atoi/) |Medium|[Java](./code/lc8.java)
L
liu13 已提交
13 14
| 010  | [Regular Expression Matching](https://leetcode.com/problems/regular-expression-matching/) | Hard | [Java](./code/lc10.java)
| 011  | [Container With Most Water](https://leetcode.com/problems/container-with-most-water/) |Medium| [Java](./code/lc11.java)
L
liu13 已提交
15 16 17 18
| 013  | [Roman to Integer](https://leetcode.com/problems/roman-to-integer) |Easy| [Java](./code/lc13.java)
| 014  | [Longest Common Prefix](https://leetcode.com/problems/longest-common-prefix) |Easy| [Java](./code/lc14.java)
| 015  | [3Sum](https://leetcode.com/problems/3sum/) | Medium | [Java](./code/lc15.java)
| 017  | [Letter Combinations of a Phone Number](https://leetcode.com/problems/letter-combinations-of-a-phone-number/) | Medium | [Java](./code/lc17.java)
L
liu13 已提交
19 20 21 22 23
| 019  | [Remove Nth Node From End of List](https://leetcode.com/problems/remove-nth-node-from-end-of-list/) | Easy | [Java](./code/lc19.java)
| 020  | [Valid Parentheses](https://leetcode.com/problems/valid-parentheses/) | Easy | [Java](./code/lc20.java)
| 021  | [Merge Two Sorted Lists](https://leetcode.com/problems/merge-two-sorted-lists/) | Easy | [Java](./code/lc21.java)
| 022  | [Generate Parentheses](https://leetcode.com/problems/generate-parentheses/) |Medium| [Java](./code/lc22.java)
| 023  | [Merge k Sorted Lists](https://leetcode.com/problems/merge-k-sorted-lists/) | Hard | [Java](./code/lc23.java)
L
liu13 已提交
24 25 26
| 026  | [Remove Duplicates from Sorted Array](https://leetcode.com/problems/remove-duplicates-from-sorted-array) | Easy | [Java](./code/lc26.java)
| 028  | [Implement strStr()](https://leetcode.com/problems/implement-strstr) | Easy | [Java](./code/lc28.java)
| 029  | [Divide Two Integers](https://leetcode.com/problems/divide-two-integers) | Medium | [Java](./code/lc29.java)
L
liu13 已提交
27 28 29
| 033  | [Search in Rotated Sorted Array](https://leetcode.com/problems/search-in-rotated-sorted-array/) |Medium| [Java](./code/lc33.java)
| 034  | [Search for a Range](https://leetcode.com/problems/search-for-a-range/) |Medium| [Java](./code/lc34.java)
| 035  | [Search Insert Position](https://leetcode.com/problems/search-insert-position/) |Medium| [Java](./code/lc35.java)
L
liu13 已提交
30 31 32
| 036  | [Valid Sudoku]() | Medium | [Java](./code/lc36.java)
| 038  | [Count and Say]() | Easy | [Java](./code/lc38.java)
| 041  | [First Missing Positive]() | Hard | [Java](./code/lc41.java)
L
liu13 已提交
33
| 042  | [Trapping Rain Water](https://leetcode.com/problems/trapping-rain-water/) | Hard | [Java](./code/lc42.java)
L
liu13 已提交
34
| 044  | [Wildcard Matching]() | Hard | [Java](./code/lc44.java)
L
liu13 已提交
35 36 37
| 046  | [Permutations](https://leetcode.com/problems/permutations/)  |Medium| [Java](./code/lc46.java)
| 048  | [Rotate Image](https://leetcode.com/problems/rotate-image/)  |Medium| [Java](./code/lc48.java)
| 049  | [Group Anagrams](https://leetcode.com/problems/anagrams/)|Medium| [Java](./code/lc49.java)
L
liu13 已提交
38
| 050  | [Pow(x, n)]() | Medium | [Java](./code/lc50.java)
L
liu13 已提交
39
| 053  | [Maximum Subarray](https://leetcode.com/problems/maximum-subarray/) |Medium| [Java](./code/lc53.java)
L
liu13 已提交
40
| 054  | [Spiral Matrix]() | Medium | [Java](./code/lc54.java)
L
liu13 已提交
41 42 43
| 055  | [Jump Game](https://leetcode.com/problems/jump-game/)  |Medium| [Java](./code/lc55.java)
| 056  | [Merge Intervals](https://leetcode.com/problems/merge-intervals/) |Medium| [Java](./code/lc56.java)
| 062  | [Unique Paths](https://leetcode.com/problems/unique-paths/)  |Medium| [Java](./code/lc62.java)
L
liu13 已提交
44 45
| 066  | [Plus One]() | Easy | [Java](./code/lc66.java)
| 069  | [Sqrt(x)]() | Easy | [Java](./code/lc69.java)
L
liu13 已提交
46
| 070  | [Climbing Stairs](https://leetcode.com/problems/climbing-stairs/) | Easy | [Java](./code/lc70.java)
L
liu13 已提交
47
| 073  | [Set Matrix Zeroes]() | Medium | [Java](./code/lc73.java)
L
liu13 已提交
48 49 50 51 52
| 075  | [Sort Colors](https://leetcode.com/problems/sort-colors/)|Medium| [Java](./code/lc75.java)
| 076  | [Minimum Window Substring](https://leetcode.com/problems/minimum-window-substring) | Hard| [Java](./code/lc76.java)
| 078  | [Subsets](https://leetcode.com/problems/subsets/) |Medium| [Java](./code/lc78.java)
| 079  | [Word Search](https://leetcode.com/problems/word-search/)|Medium| [Java](./code/lc79.java)
| 084  | [Largest Rectangle in Histogram](https://leetcode.com/problems/largest-rectangle-in-histogram) | Hard | [Java](./code/lc84.java)
L
liu13 已提交
53 54
| 088  | [Merge Sorted Array]() | Easy | [Java](./code/lc88.java)
| 091  | [Decode Ways]() | Medium | [Java](./code/lc91.java)
L
liu13 已提交
55 56 57 58
| 094  | [Binary Tree Inorder Traversal](https://leetcode.com/problems/binary-tree-inorder-traversal/) |Medium| [Java](./code/lc94.java)
| 098  | [Validate Binary Search Tree](https://leetcode.com/problems/validate-binary-search-tree/) |Medium| [Java](./code/lc98.java)
| 101  | [Symmetric Tree](https://leetcode.com/problems/symmetric-tree/) | Easy | [Java](./code/lc101.java)
| 102  | [Binary Tree Level Order Traversal](https://leetcode.com/problems/binary-tree-level-order-traversal/) | Easy | [Java](./code/lc102.java)
L
liu13 已提交
59
| 103  | [Binary Tree Zigzag Level Order Traversal]() | Medium | [Java](./code/lc103.java)
L
liu13 已提交
60 61
| 104  | [Maximum Depth of Binary Tree](https://leetcode.com/problems/maximum-depth-of-binary-tree/) | Easy | [Java](./code/lc104.java)
| 105  | [Construct Binary Tree from Preorder and Inorder Traversal](https://leetcode.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/) |Medium| [Java](./code/lc105.java)
L
liu13 已提交
62 63 64
| 108  | [Convert Sorted Array to Binary Search Tree]() | Easy | [Java](./code/lc108.java)
| 116  | [Populating Next Right Pointers in Each Node ]() | Medium | [Java](./code/lc116.java)
| 118  | [Pascal's Triangle]() | Easy | [Java](./code/lc118.java)
L
liu13 已提交
65
| 121  | [Best Time to Buy and Sell Stock](https://leetcode.com/problems/best-time-to-buy-and-sell-stock/) | Easy | [Java](./code/lc121.java)
L
liu13 已提交
66
| 122  | [Best Time to Buy and Sell Stock II]() | Easy | [Java](./code/lc122].java)
L
liu13 已提交
67
| 124  | [Binary Tree Maximum Path Sum](https://leetcode.com/problems/binary-tree-maximum-path-sum/) | Hard | [Java](./code/lc124.java)
L
liu13 已提交
68 69
| 125  | [Valid Palindrome]() | Easy | [Java](./code/lc125.java)
| 127  | [Word Ladder]() | Medium | [Java](./code/lc127.java)
L
liu13 已提交
70
| 128  | [Longest Consecutive Sequence](https://leetcode.com/problems/longest-consecutive-sequence/) | Hard | [Java](./code/lc128.java)
L
liu13 已提交
71 72 73
| 130  | [Surrounded Regions]() | Medium | [Java](./code/lc130.java)
| 131  | [Palindrome Partitioning]() | Medium | [Java](./code/lc131.java)
| 134  | [Gas Station]() | Medium | [Java](./code/lc134.java)
L
liu13 已提交
74
| 136  | [Single Number](https://leetcode.com/problems/single-number) | Easy | [Java](./code/lc136.java) 
L
liu13 已提交
75
| 138  | [Copy List with Random Pointer]() | Medium | [Java](./code/lc138.java)
L
liu13 已提交
76
| 139  | [Word Break](https://leetcode.com/problems/word-break/) |Medium| [Java](./code/lc139.java)
L
liu13 已提交
77
| 140  | [Word Break II]() | Hard | [Java](./code/lc140.java)
L
liu13 已提交
78 79 80
| 141  | [Linked List Cycle](https://leetcode.com/problems/linked-list-cycle/) | Easy | [Java](./code/lc141.java)
| 146  | [LRU Cache](https://leetcode.com/problems/lru-cache/)  | Hard | [Java](./code/lc146.java)
| 148  | [Sort List](https://leetcode.com/problems/sort-list/)  |Medium| [Java](./code/lc148.java)
L
liu13 已提交
81 82
| 149  | [Max Points on a Line]() | Hard | [Java](./code/lc149.java)
| 150  | [Evaluate Reverse Polish Notation]() | Medium | [Java](./code/lc150.java)
L
liu13 已提交
83 84 85
| 152  | [Maximum Product Subarray](https://leetcode.com/problems/maximum-product-subarray/) |Medium| [Java](./code/lc152.java)
| 155  | [Min Stack](https://leetcode.com/problems/min-stack/)  | Easy | [Java](./code/lc155.java)
| 160  | [Intersection of Two Linked Lists](https://leetcode.com/problems/intersection-of-two-linked-lists/) | Easy | [Java](./code/lc160.java)
L
liu13 已提交
86 87 88
| 162  | [Find Peak Element]() | Medium | [Java](./code/lc162.java)
| 163  | [Missing Ranges](https://leetcode.com/problems/missing-ranges) | Medium | [没权限]
| 166  | [Fraction to Recurring Decimal]() | Medium | [Java](./code/lc166.java)
L
liu13 已提交
89
| 169  | [Majority Element](https://leetcode.com/problems/majority-element/) | Easy | [Java](./code/lc169.java)
L
liu13 已提交
90 91 92 93 94 95
| 171  | [Excel Sheet Column Number]() | Easy | [Java](./code/lc171.java)
| 172  | [Factorial Trailing Zeroes]() | Easy | [Java](./code/lc172.java)
| 179  | [Largest Number]() | Medium | [Java](./code/lc179.java)
| 189  | [Rotate Array]() | Easy | [Java](./code/lc189.java)
| 190  | [Reverse Bits]() | Easy | [Java](./code/lc190.java)
| 191  | [Number of 1 Bits]() | Easy | [Java](./code/lc191.java)
L
liu13 已提交
96 97
| 198  | [House Robber](https://leetcode.com/problems/house-robber/)  | Easy | [Java](./code/lc198.java)
| 200  | [Number of Islands](https://leetcode.com/problems/number-of-islands/) |Medium| [Java](./code/lc200.java)
L
liu13 已提交
98 99
| 202  | [Happy Number]() | Easy | [Java](./code/lc202.java)
| 204  | [Count Primes]() | Easy | [Java](./code/lc204.java)
L
liu13 已提交
100 101 102
| 206  | [Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/) | Easy |[Java](./code/lc206.java)
| 207  | [Course Schedule](https://leetcode.com/problems/course-schedule/) |Medium|[Java](./code/lc207.java)
| 208  | [Implement Trie (Prefix Tree)](https://leetcode.com/problems/implement-trie-prefix-tree/) |Medium| [Java](./code/lc208.java)
L
liu13 已提交
103 104
| 210  | [Course Schedule II]() | Medium | [Java](./code/lc210.java)
| 212  | [Word Search II]() | Hard | [Java](./code/lc212.java)
L
liu13 已提交
105
| 215  | [Kth Largest Element in an Array](https://leetcode.com/problems/kth-largest-element-in-an-array/) |Medium| [Java](./code/lc215.java)
L
liu13 已提交
106 107 108 109
| 217  | [Contains Duplicate]() | Easy | [Java](./code/lc217.java)
| 218  | [The Skyline Problem]() | Hard | [Java](./code/lc218.java)
| 227  | [Basic Calculator II]() | Medium | [Java](./code/lc227.java)
| 230  | [Kth Smallest Element in a BST]() | Medium | [Java](./code/lc230.java)
L
liu13 已提交
110 111
| 234  | [Palindrome Linked List](https://leetcode.com/problems/palindrome-linked-list/) | Easy | [Java](./code/lc234.java)
| 236  | [Lowest Common Ancestor of a Binary Tree](https://leetcode.com/problems/lowest-common-ancestor-of-a-binary-tree/) |Medium| [Java](./code/lc236.java)
L
liu13 已提交
112
| 237  | [Delete Node in a Linked List]() | Easy | [Java](./code/lc237.java)
L
liu13 已提交
113 114 115
| 238  | [Product of Array Except Self](https://leetcode.com/problems/product-of-array-except-self/) |Medium| [Java](./code/lc238.java)
| 239  | [Sliding Window Maximum](https://leetcode.com/problems/sliding-window-maximum/) | Hard | [Java](./code/lc239.java)
| 240  | [Search a 2D Matrix II](https://leetcode.com/problems/search-a-2d-matrix-ii/) |Medium| [Java](./code/lc240.java)
L
liu13 已提交
116
| 242  | [Valid Anagram]() | Easy | [Java](./code/lc242.java)
L
liu13 已提交
117 118
| 251  | [Flatten 2D Vector](https://leetcode.com/problems/flatten-2d-vector) | Medium | [没权限]
| 253  | [Meeting Rooms II](https://leetcode.com/problems/meeting-rooms-ii) | Medium | [没权限]
L
liu13 已提交
119
| 268  | [Missing Number]() | Easy | [Java](./code/lc268.java)
L
liu13 已提交
120 121
| 269  | [Alien Dictionary]() | Hard |[没权限]
| 277  | [Find the Celebrity]() | Medium | [没权限]
L
liu13 已提交
122 123
| 279  | [Perfect Squares](https://leetcode.com/problems/perfect-squares/) |Medium| [Java](./code/lc279.java)
| 283  | [Move Zeroes](https://leetcode.com/problems/move-zeroes/)| Easy | [Java](./code/lc283.java)
L
liu13 已提交
124
| 285  | [Inorder Successor in BST](https://leetcode.com/problems/inorder-successor-in-bst) | Medium | [没权限]
L
liu13 已提交
125
| 287  | [Find the Duplicate Number](https://leetcode.com/problems/find-the-duplicate-number/) | Hard | [Java](./code/lc287.java)
L
liu13 已提交
126
| 295  | [Find Median from Data Stream]() | Hard | [Java](./code/lc295.java)
L
liu13 已提交
127 128
| 297  | [Serialize and Deserialize Binary Tree](https://leetcode.com/problems/serialize-and-deserialize-binary-tree/) | Hard | [Java](./code/lc297.java)
| 300  | [Longest Increasing Subsequence](https://leetcode.com/problems/longest-increasing-subsequence/) |Medium| [Java](./code/lc300.java)
L
liu13 已提交
129 130
| 308  | [Range Sum Query 2D - Mutable](https://leetcode.com/problems/range-sum-query-2d-mutable) | Medium | [没权限]
| 315  | [Count of Smaller Numbers After Self]() | Hard | [Java](./code/lc315.java)
L
liu13 已提交
131
| 322  | [Coin Change](https://leetcode.com/problems/coin-change/)|Medium| [Java](./code/lc322.java)
L
liu13 已提交
132 133 134 135 136 137 138 139
| 324  | [Wiggle Sort II]() | Medium | [Java](./code/lc324.java)
| 326  | [Power of Three]() | Easy | [Java](./code/lc326.java)
| 328  | [Odd Even Linked List]() | Medium | [Java](./code/lc328.java)
| 329  | [Longest Increasing Path in a Matrix]() | Hard | [Java](./code/lc329.java)
| 334  | [Increasing Triplet Subsequence]() | Medium | [Java](./code/lc334.java)
| 340  | [Longest Substring with At Most K Distinct Characters](https://leetcode.com/problems/longest-substring-with-at-most-k-distinct-characters) | Hard | [Java](./code/lc340.java)
| 341  | [Flatten Nested List Iterator]() | Medium | [Java](./code/lc341.java)
| 344  | [Reverse String]() | Easy | [Java](./code/lc344.java)
L
liu13 已提交
140
| 347  | [Top K Frequent Elements](https://leetcode.com/problems/top-k-frequent-elements/) |Medium| [Java](./code/lc347.java)
L
liu13 已提交
141 142 143 144 145 146 147 148 149 150
| 348  | [Design Tic-Tac-Toe](https://leetcode.com/problems/design-tic-tac-toe) | Medium | [没权限]
| 350  | [Intersection of Two Arrays II]() | Easy | [Java](./code/lc350.java)
| 371  | [Sum of Two Integers]() | Easy | [Java](./code/lc371.java)
| 378  | [Kth Smallest Element in a Sorted Matrix]() | Medium | [Java](./code/lc378.java)
| 380  | [Insert Delete GetRandom O(1)]() | Medium | [Java](./code/lc380.java)
| 384  | [Shuffle an Array]() | Medium | [Java](./code/lc384.java)
| 387  | [First Unique Character in a String]() | Easy | [Java](./code/lc387.java)
| 395  | [Longest Substring with At Least K Repeating Characters]() | Medium | [Java](./code/lc395.java)
| 412  | [Fizz Buzz](https://leetcode.com/problems/fizz-buzz) | Easy | [Java](./code/lc412.java)
| 454  | [4Sum II](https://leetcode.com/problems/4sum-ii) | Medium | [Java](./code/lc454.java)