LeetCode解题笔记
文章平均质量分 85
luuyiran
code from 2018
展开
-
LeetCode分类总结
链表树二叉树的遍历二叉树的构建二叉查找树二叉树的递归原创 2018-06-05 11:03:12 · 5566 阅读 · 1 评论 -
84. Largest Rectangle in Histogram
84.Largest Rectangle in HistogramGiven an array of integers heights representing the histogram’s bar height where the width of each bar is 1, return the area of the largest rectangle in the histogram.Example 1:Input: height = [2,1,5,6,2,3]Output: 10E原创 2021-06-24 23:18:32 · 224 阅读 · 0 评论 -
43. Multiply Strings [LeetCode]
大整数相乘,假设输入为非负,从左到右依次解析。void add_char(string &s, int index, int val){ int tmp = s[index] - '0' + val; s[index] = tmp % 10 + '0'; if (tmp / 10 > 0) add_char(s, index - 1, tmp / 10);}string multyply(const string &num1, const原创 2020-06-24 18:31:12 · 175 阅读 · 0 评论 -
64. Minimum Path Sum [LeetCode]
64.Minimum Path SumGiven amxngrid filled with non-negative numbers, find a path from top left to bottom right whichminimizesthe sum of all numbers along its path.Note:You can only move either ...原创 2018-06-01 16:07:54 · 182 阅读 · 0 评论 -
8. String to Integer (atoi) [LeetCode]
8.String to Integer (atoi)Implementatoiwhichconverts a string to an integer.算法好想,但是逻辑费脑子啊,边界检查,好几次才做对。int myAtoi(string str) {int num = 0;int sign = 1;const int n = str...原创 2018-06-01 12:54:39 · 216 阅读 · 0 评论 -
129. Sum Root to Leaf Numbers [LeetCode]
129.Sum Root to Leaf NumbersGiven a binary tree containing digits from0-9only, each root-to-leaf path could represent a number.An example is the root-to-leaf path1->2->3which represents the...原创 2018-06-07 13:40:48 · 292 阅读 · 0 评论 -
107. Binary Tree Level Order Traversal II [LeetCode]
107.Binary Tree Level Order Traversal IIGiven a binary tree, return thebottom-up level ordertraversal of its nodes' values. (ie, from left to right, level by level from leaf to root).For example:Gi...原创 2018-06-07 13:23:01 · 249 阅读 · 0 评论 -
145. Binary Tree Postorder Traversal(后序遍历) [LeetCode]
145.Binary Tree Postorder Traversal//后序遍历//递归class Solution_145_1 {public:vector<int>result;vector<int> postorderTraversal(TreeNode* root) {if (root) {postorde...原创 2018-06-07 11:31:59 · 239 阅读 · 0 评论 -
94. Binary Tree Inorder Traversal(中序遍历) [LeetCode]
94.Binary Tree Inorder Traversal//中序遍历//递归class Solution_94_1 {public:vector<int>result;vector<int> inorderTraversal(TreeNode* root) {if (root) {inorderTravers...原创 2018-06-07 11:15:25 · 291 阅读 · 0 评论 -
144. Binary Tree Preorder Traversal(前序遍历) [LeetCode]
144.Binary Tree Preorder Traversal//前序遍历//使用递归 题目不推荐class Solution_144_1 {public:vector<int>result;vector<int> preorderTraversal(TreeNode* root) {if (root) {r...原创 2018-06-07 10:47:48 · 218 阅读 · 0 评论 -
235. Lowest Common Ancestor of a Binary Search Tree [LeetCode]
Given a binary search tree (BST), find the lowest common ancestor (LCA) of two given nodes in the BST.According to thedefinition of LCA on Wikipedia: “The lowest common ancestor is defined between tw...原创 2018-06-21 15:44:13 · 288 阅读 · 0 评论 -
437. Path Sum III [LeetCode]
Find the number of paths that sum to a given value.Example:root = [10,5,-3,3,2,null,11,3,-2,null,1], sum = 8 10 / \ 5 -3 / \ \ 3 2 11 / \ \3 -2 1Return 3. The p...原创 2018-06-21 15:39:05 · 223 阅读 · 0 评论 -
257. Binary Tree Paths [LeetCode]
Given a binary tree, return all root-to-leaf paths.Note:A leaf is a node with no children.Example:Input: 1 / \2 3 \ 5Output: ["1->2->5", "1->3"]Explanation: All root-to-le...原创 2018-06-21 15:28:59 · 196 阅读 · 0 评论 -
112. Path Sum [LeetCode]
Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding up all the values along the path equals the given sum.Note:A leaf is a node with no children.Example:Give...原创 2018-06-21 15:19:40 · 234 阅读 · 0 评论 -
226. Invert Binary Tree [LeetCode]
Invert a binary tree.反转二叉树Example:Input: 4 / \ 2 7 / \ / \1 3 6 9Output: 4 / \ 7 2 / \ / \9 6 3 1Trivia:This problem was inspired bythis original tweetb...原创 2018-06-21 15:05:41 · 245 阅读 · 0 评论 -
120. Triangle [LeetCode]
120.TriangleGiven a triangle, find the minimum path sum from top to bottom. Each step you may move to adjacent numbers on the row below.For example, given the following triangle[ [2], [3,4],...原创 2018-06-16 20:34:40 · 370 阅读 · 0 评论 -
343. Integer Break [LeetCode]
343.Integer BreakGiven a positive integern, break it into the sum ofat leasttwo positive integers and maximize the product of those integers. Return the maximum product you can get.For example, gi...原创 2018-06-18 13:14:45 · 339 阅读 · 0 评论 -
50. Pow(x, n) [LeetCode]
Implementpow(x,n), which calculatesxraised to the powern(xn).//二分法x^n=x^(n/2)*x^(n/2)*x^(n%2)//分治法class Solution {public: double myPow(double x, int n) { if (n < 0)return power(x, ...原创 2018-07-26 10:12:11 · 386 阅读 · 0 评论 -
28. Implement strStr() [LeetCode]
28.Implement strStr()ImplementstrStr().Return the index of the first occurrence of needle in haystack, or-1if needle is not part of haystack.Example 1:Input: haystack = "hello", needle = "ll"Outp...原创 2018-07-11 13:37:31 · 336 阅读 · 0 评论 -
74. Search a 2D Matrix [LeetCode]
74.Search a 2D MatrixWrite an efficient algorithm that searches for a value in anmxnmatrix. This matrix has the following properties:Integers in each row are sorted from left to right.The first i...原创 2018-07-11 12:26:34 · 350 阅读 · 0 评论 -
35. Search Insert Position [LeetCode]
35.Search Insert PositionGiven a sorted array and a target value, return the index if the target is found. If not, return the index where it would be if it were inserted in order.You may assume no du...原创 2018-07-11 12:24:26 · 257 阅读 · 0 评论 -
34. Find First and Last Position of Element in Sorted Array [LeetCode]
34.Find First and Last Position of Element in Sorted ArrayGiven an array of integersnumssorted in ascending order, find the starting and ending position of a giventargetvalue.Your algorith...原创 2018-07-11 12:19:40 · 1651 阅读 · 0 评论 -
113. Path Sum II [LeetCode]
113.Path Sum IIExample:Given the below binary tree andsum = 22, 5 / \ 4 8 / / \ 11 13 4 / \ / \7 2 5 1Return:[ [5,4,11,2], [5,8,4,5]]深度优先搜索,如果没有找到,返回时要记得...原创 2018-06-29 10:36:40 · 290 阅读 · 0 评论 -
105. Construct Binary Tree from Preorder and Inorder Traversal(构建二叉树) [LeetCode]
105.Construct Binary Tree from Preorder and Inorder TraversalFor example, givenpreorder =[3,9,20,15,7]inorder = [9,3,15,20,7]Return the following binary tree: 3 / \ 9 20 / \ 15 7...原创 2018-06-28 21:18:00 · 324 阅读 · 0 评论 -
66. Plus One [LeetCode]
Given anon-emptyarray of digitsrepresenting a non-negative integer, plus one to the integer.The digits are stored such that the most significant digit is at the head of the list, and each element i...原创 2018-07-08 17:38:06 · 259 阅读 · 0 评论 -
147. Insertion Sort List [LeetCode]
147.Insertion Sort List链表排序,插入排序class Solution {public:ListNode * insertionSortList(ListNode* head) {if (head == nullptr || head->next == nullptr)return head;//创建一个系统最小节点...原创 2018-06-30 23:26:40 · 561 阅读 · 0 评论 -
148. Sort List [LeetCode]
单链表的归并排序,常数空间,O(nlogn).先来看几个简单的链表排序问题。88.Merge Sorted ArrayGiven two sorted integer arraysnums1andnums2, mergenums2intonums1as one sorted array.Note:The number of elements initialized innums1...原创 2018-06-30 22:16:46 · 368 阅读 · 0 评论 -
63. Unique Paths II [LeetCode]
63.Unique Paths IINow consider if some obstacles are added to the grids. How many unique paths would there be?Example 1:Input:[ [0,0,0], [0,1,0], [0,0,0]]Output: 2Explanation:There is one ...原创 2018-06-18 14:45:03 · 217 阅读 · 0 评论 -
198. House Robber [LeetCode]
You are a professional robber planning to rob houses along a street. Each house has a certain amount of money stashed, the only constraint stopping you from robbing each of them is that adjacent house...原创 2018-06-18 13:28:34 · 353 阅读 · 0 评论 -
104. Maximum Depth of Binary Tree [LeetCode]
104.Maximum Depth of Binary TreeGiven a binary tree, find its maximum depth.The maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node.Note:A l...原创 2018-06-21 15:00:18 · 232 阅读 · 0 评论 -
12. Integer to Roman [LeetCode]
12.Integer to Romanstring intToRoman(int num) {const int radix[] = { 1000,900,500,400,100,90,50,40,10,9, 5, 4, 1 };const string symbol[] = { "M", "CM",...原创 2018-06-06 16:04:53 · 175 阅读 · 0 评论 -
65. Valid Number [LeetCode]
65.Valid NumberValidate if a given string is numeric.Some examples:"0"=>true" 0.1 "=>true"abc"=>false"1 a"=>false"2e10"=>trueNote:It is intended for the proble原创 2018-06-06 15:28:39 · 205 阅读 · 0 评论 -
24. Swap Nodes in Pairs [LeetCode]
24.Swap Nodes in PairsGiven alinked list, swap every two adjacent nodes and return its head.Example:Given 1->2->3->4, you should return the list as 2->1->4->3.Note:Your algorithm s...原创 2018-05-27 15:17:08 · 210 阅读 · 0 评论 -
19. Remove Nth Node From End of List [LeetCode]
19.Remove Nth Node From End of ListGiven a linked list, remove then-th node from the end of list and return its head.Example:Given linked list: 1->2->3->4->5, and n = 2.After removing ...原创 2018-05-27 14:01:16 · 250 阅读 · 0 评论 -
61. Rotate List [LeetCode]
61.Rotate ListGiven a linkedlist, rotate the list to the right bykplaces, wherekis non-negative.Example 1:Input: 1->2->3->4->5->NULL, k = 2Output: 4->5->1->2->3->N...原创 2018-05-27 11:24:04 · 365 阅读 · 0 评论 -
82. Remove Duplicates from Sorted List II [LeetCode]
82.Remove Duplicates from Sorted List IIGiven a sorted linked list, delete all nodes that have duplicate numbers, leaving onlydistinctnumbers from the original list.Example 1:Input: 1->2->3-&...原创 2018-05-26 08:49:42 · 216 阅读 · 0 评论 -
83. Remove Duplicates from Sorted List [LeetCode]
83.Remove Duplicates from Sorted ListGiven a sorted linked list, delete all duplicates such that each element appear onlyonce.Example 1:Input: 1->1->2Output: 1->2Example 2:Input: 1->1-...原创 2018-05-25 23:00:06 · 237 阅读 · 0 评论 -
86. Partition List [LeetCode]
86.Partition ListGiven a linked list and a valuex, partition it such that all nodes less thanxcome before nodes greater than or equal tox.You should preserve the original relative order of...原创 2018-05-25 22:25:29 · 269 阅读 · 0 评论 -
206. Reverse Linked List [LeetCode]
206.Reverse Linked ListReverse a singly linked list.Example:Input: 1->2->3->4->5->NULLOutput: 5->4->3->2->1->NULL链表反转问题。//递推 ListNode * reverseList(List...原创 2018-05-25 20:53:58 · 464 阅读 · 0 评论 -
96. Unique Binary Search Trees [LeetCode]
Givenn, how many structurally uniqueBST's(binary search trees) that store values 1 ...n?Example:Input: 3Output: 5Explanation:Given n = 3, there are a total of 5 unique BST's: 1 3 ...原创 2018-05-21 18:37:28 · 261 阅读 · 0 评论