Leetcode答案集
关于项目:
本项目包含本人LeetCode解题的答案,全部将由JavaScript语言进行解答。并会在每个题目的文件夹中添加相关的思路解析。
详情
# | Title | Solution | Time | Space | Difficulty |
---|---|---|---|---|---|
1 | Two Sum | JavaScript | O(n * log n) / O(n) | O(1) / O(n) | easy |
2 | Add Two Numbers | JavaScript | O(n) | O(1) | Medium |
4 | Median of Two Sorted Arrays | JavaScript | O(log (m+n)) | O(1) | Hard |
7 | Reverse Integer | JavaScript | O(n) | O(1) | Easy |
9 | Palindrome Number | JavaScript | O(n) | O(1) | Easy |
19 | Remove Nth Node From End of List | JavaScript | O(n) | O(1) | Medium |
21 | Merge Two Sorted Lists | JavaScript | O(n) | O(1) | Easy |
26 | Remove Duplicates from Sorted Array | JavaScript | O(n) | O(1) | Easy |
27 | Remove Element | JavaScript | O(n) | O(1) | Easy |
33 | Search in Rotated Sorted Array | JavaScript | O(log n) | O(1) | Medium |
34 | Search for a Range | JavaScript | O(log n) | O(1) | Medium |
35 | Search Insert Position | JavaScript | O(log n) | O(1) | Easy |
54 | Spiral Matrix | JavaScript | O(n * m) | O(1) | Medium |
61 | Rotate List | JavaScript | O(n + m) | O(1) | Medium |
74 | Search a 2D Matrix | JavaScript | O(n ^ 2) | O(n) | Medium |
78 | Subsets | JavaScript | O(n) | O(1) | Medium |
83 | Remove Duplicates from Sorted List | JavaScript | O(n) | O(n) | Easy |
92 | Reverse Linked List II | JavaScript | O(n) | O(1) | Medium |
94 | Binary Tree Inorder Traversal | JavaScript | O(n) | O(1) | Medium |
95 | Unique Binary Search Trees II | JavaScript | O(Subsets) | O(n) | Medium |
96 | Unique Binary Search Trees | JavaScript | O(n ^ 2) | O(n) | Medium |
98 | Validate Binary Search Tree | JavaScript | O(n) | O(n) | Medium |
99 | Recover Binary Search Tree | JavaScript | O(n) | O(1) | Hard |
100 | Same Tree | JavaScript | O(n) | O(n) | Easy |
101 | Symmetric Tree | JavaScript | O(n) | O(n) | Easy |
102 | Binary Tree Level Order Traversal | JavaScript | O(n) | O(n) | Medium |
103 | Binary Tree Zigzag Level Order Traversal | JavaScript | O(n) | O(n) | Medium |
104 | Maximum Depth of Binary Tree | JavaScript | O(n) | O(n) | Easy |
105 | Construct Binary Tree from Preorder and Inorder Traversal | JavaScript | O(n) | O(n) | Medium |
106 | Construct Binary Tree from Inorder and Postorder Traversal | JavaScript | O(n) | O(n) | Medium |
107 | Binary Tree Level Order Traversal II | JavaScript | O(n) | O(n) | Easy |
108 | Convert Sorted Array to Binary Search Tree | JavaScript | O(n) | O(n) | Easy |
110 | Balanced Binary Tree | JavaScript | O(n) | O(n) | Easy |
111 | Minimum Depth of Binary Tree | JavaScript | O(n) | O(n) | Easy |
112 | Path Sum | JavaScript | O(n) | O(n) | Easy |
113 | Path Sum II | JavaScript | O(n) | O(n) | Medium |
114 | Flatten Binary Tree to Linked List | JavaScript | O(n) | O(n) | Medium |
116 | Populating Next Right Pointers in Each Node | JavaScript | O(n) | O(1) | Medium |
117 | Populating Next Right Pointers in Each Node II | JavaScript | O(n) | O(1) | Medium |
118 | Pascal's Triangle | JavaScript | O(n ^ 2) | O(1) | Easy |
119 | Pascal's Triangle II | JavaScript | O(n ^ 2) | O(1) | Medium |
124 | Binary Tree Maximum Path Sum | JavaScript | O(n) | O(n) | Hard |
129 | Sum Root to Leaf Numbers | JavaScript | O(n) | O(n) | Medium |
141 | Linked List Cycle | JavaScript | O(n) | O(1) | Easy |
142 | Linked List Cycle II | JavaScript | O(n) | O(1) | Medium |
144 | Binary Tree Preorder Traversal | JavaScript | O(n) | O(n) | Medium |
145 | Binary Tree Postorder Traversal | JavaScript | O(n) | O(n) | Hard |
153 | Find Minimum in Rotated Sorted Array | JavaScript | O(log n) | O(1) | Medium |
154 | Find Minimum in Rotated Sorted Array II | JavaScript | O(n) | O(1) | Medium |
155 | Min Stack | JavaScript | O(1) | O(n) | Easy |
160 | Intersection of Two Linked Lists | JavaScript | O(n) | O(1) | Easy |
167 | Two Sum II - Input array is sorted | JavaScript | O(n) | O(1) | Easy |
169 | Majority Element | JavaScript | O(n) | O(1) | Easy |
173 | Binary Search Tree Iterator | JavaScript | O(n) | O(n) | Medium |
199 | Binary Tree Right Side View | JavaScript | O(n) | O(n) | Easy |
203 | Remove Linked List Elements | JavaScript | O(n) | O(1) | Easy |
206 | Reverse Linked List | JavaScript | O(n)/O(n) | O(1)/O(n) | Easy |
209 | Minimum Size Subarray Sum | JavaScript | O(n) | O(1) | Medium |
217 | Contains Duplicate | JavaScript | O(n) | O(n) | Easy |
219 | Contains Duplicate II | JavaScript | O(n) | O(n) | Easy |
222 | Count Complete Tree Nodes | JavaScript | O(n) | O(n) | Medium |
226 | Invert Binary Tree | JavaScript | O(n) | O(n) | Easy |
229 | Majority Element II | JavaScript | O(n) | O(n) | Medium |
230 | Kth Smallest Element in a BST | JavaScript | O(n) | O(n) | Medium |
232 | Implement Queue using Stacks | JavaScript | O(n) | O(n) | Easy |
235 | Implement Stack using Queues | JavaScript | O(n) | O(n) | Easy |
234 | Palindrome Linked List | JavaScript | O(n) | O(1) | Easy |
235 | Lowest Common Ancestor of a Binary Search Tree | JavaScript | O(n) | O(1) | Easy |
236 | Lowest Common Ancestor of a Binary Search Tree | JavaScript | O(n) | O(n) | Medium |
237 | Delete Node in a Linked List | JavaScript | O(1) | O(1) | Easy |
238 | Product of Array Except Self | JavaScript | O(n) | O(1) | Medium |
240 | Search a 2D Matrix II | JavaScript | O(m + n) | O(1) | Medium |
257 | Binary Tree Paths | JavaScript | O(n) | O(n) | Easy |
268 | Missing Number | JavaScript | O(n) | O(1) | Easy |
283 | Move Zeroes | JavaScript | O(n) | O(1) | Easy |
287 | Find the Duplicate Number | JavaScript | O(n * log n) / O(n) | O(1) / O(1) | Medium |
297 | Serialize and Deserialize Binary Tree | JavaScript | O(n) | O(n) | Hard |
344 | Reverse String | JavaScript | O(n) | O(1) | Easy |
349 | Intersection of Two Arrays | JavaScript | O(n) | O(n) | Easy |
378 | Kth Smallest Element in a Sorted Matrix | JavaScript | O(n * log X) | O(1) | Medium |
404 | Sum of Left Leaves | JavaScript | O(n) | O(n) | Easy |
437 | Path Sum III | JavaScript | O(n) | O(n * log n) | Easy |
442 | Find All Duplicates in an Array | JavaScript | O(n) | O(1) | Medium |
445 | Add Two Numbers II | JavaScript | O(n) | O(1) | Medium |
448 | Find All Numbers Disappeared in an Array | JavaScript | O(n) | O(1) | Easy |
449 | Serialize and Deserialize BST | JavaScript | O(n) | O(n) | Medium |
450 | Delete Node in a BST | JavaScript | O(n) | O(1) | Medium |
461 | Hamming Distance | JavaScript | O(1) | O(1) | Easy |
476 | Number Complement | JavaScript | O(1) | O(1) | Easy |
501 | Find Mode in Binary Search Tree | JavaScript | O(n) | O(n) | Easy |
508 | Most Frequent Subtree Sum | JavaScript | O(n) | O(n) | Medium |
513 | Find Bottom Left Tree Value | JavaScript | O(n) | O(n) | Medium |
515 | Find Largest Value in Each Tree Row | JavaScript | O(n) | O(n) | Medium |
538 | Convert BST to Greater Tree | JavaScript | O(n) | O(n) | Easy |
543 | Diameter of Binary Tree | JavaScript | O(n) | O(n) | Easy |
561 | Array Partition I | JavaScript | O(n) | O(n) | Easy |
563 | Binary Tree Tilt | JavaScript | O(n) | O(n) | Easy |
572 | Subtree of Another Tree | JavaScript | O(n ^ 2) | O(n * n) | Easy |
606 | Construct String from Binary Tree | JavaScript | O(n) | O(n) | Easy |
617 | Merge Two Binary Trees | JavaScript | O(n * log n) | O(1) | Easy |
623 | Add One Row to Tree | JavaScript | O(n) | O(n) | Medium |
637 | Average of Levels in Binary Tree | JavaScript | O(n) | O(n) | Easy |
643 | Maximum Average Subarray I | JavaScript | O(n) | O(1) | Easy |
652 | Find Duplicate Subtrees | JavaScript | O(n ^ 2) | O(n ^ 2) | Medium |
653 | Two Sum IV - Input is a BST | JavaScript | O(n) | O(n) | Easy |
654 | Maximum Binary Tree | JavaScript | O(n * log n) | O(n) | Medium |
655 | Print Binary Tree | JavaScript | O(n) | O(n) | Medium |
662 | Maximum Width of Binary Tree | JavaScript | O(n) | O(n) | Medium |
669 | Trim a Binary Search Tree | JavaScript | O(n) | O(n) | Easy |
671 | Second Minimum Node In a Binary Tree | JavaScript | O(n) | O(n) | Easy |
674 | Longest Continuous Increasing Subsequence | JavaScript | O(n) | O(1) | Easy |