8 qq789045

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 2w+

leetcode 5419. 两个子序列的最大点积

https://leetcode-cn.com/problems/max-dot-product-of-two-subsequences/dfs枚举版本,超时。参数状态包括 之前的最大和,以及两个位置。sum是sum+nums1[i]*nums2[j]。转换为动态规划的时候,dp[i][j],是包括两个最后结束位置i,j的值的点乘的。所以答案要不停的记住最大值。class Solution {public: int ans=-0x3f3f3f3f; int .

2020-05-24 15:12:55

5407. 切披萨的方案数

https://leetcode-cn.com/problems/number-of-ways-of-cutting-a-pizza/最后留一块也要符合要求、要求披萨全部用完,以在倒数第二块的时候判断return。class Solution {public: int n,m; long long count=0; int K; vector<string> pizza; int record[55][55][15]; int m.

2020-05-10 20:35:53

leetcode 5403. 有序矩阵中的第 k 个最小数组和

https://leetcode-cn.com/problems/find-the-kth-smallest-sum-of-a-matrix-with-sorted-rows/submissions/枚举,中途记录前k个最小和,遍历每行,把当前行的元素都加到上一行的前k个最小和,然后排序取前k个最小和。这关键的核心是,可以按行拆分,本行的k个最小和肯定来自上一行的k个最小和,因为如果...

2020-05-03 22:08:59

leetcode 5402. 绝对差不超过限制的最长连续子数组

https://leetcode-cn.com/problems/longest-continuous-subarray-with-absolute-diff-less-than-or-equal-to-limit/同时维护两个队列,都是从旧到新,分别从大到小和从小到大。最左边的就是最大值和最小值。如果差值大于limit,则弹出最左的。要记录区间的最左端,弹出的时候更新最左端。c...

2020-05-03 14:34:23

LeetCode 185. 部门工资前三高的所有员工

https://leetcode-cn.com/problems/department-top-three-salaries/这个是在where里求排名来筛选。# Write your MySQL query statement belowselect d.Name as 'Department', e1.Name as 'Employee', e1.S...

2020-04-30 00:07:53

leetcode 234. 回文链表

https://leetcode-cn.com/problems/palindrome-linked-list/没啥难度的一道题,关键是处理好长度奇数偶数的问题、以及快慢指针要准确切一半的初始化、结束判断。栈先把值放进去,比较方便,【1,2】这样的链表,如果是在循环里面放,就进不了循环没放进去栈里。快慢指针先初始为1和2,然后判断next是否为空来判断是否最后一个。长度奇数的值...

2020-04-29 12:23:47

leetcode 581. 最短无序连续子数组

https://leetcode-cn.com/problems/shortest-unsorted-continuous-subarray/找出后面有比这个数字小的最左数字,前面有比这个数字大的最右数字。要从两个方向跑,因为栈会弹出数字,后面可能会有比这个弹出数字小的数字,弹出了就找不到了。class Solution {public: int findUnsorte...

2020-04-29 00:08:04

leetcode 39. 组合总和

https://leetcode-cn.com/problems/combination-sum/一个数字可以重复使用多次,用的时候dfs下标不用加1,这样可以用多次,加上大于target剪枝,也不会用太多。不用的时候下标要加1。class Solution {public: vector<int> run; vector<vector<in...

2020-04-28 22:17:37

leetcode 48. 旋转图像

https://leetcode-cn.com/problems/rotate-image/submissions/由外层向内层遍历,每层都是一个正方形的四边。每条边需要更换len-1个。逆时针更换,最开始的存在temp里。class Solution {public: void rotate(vector<vector<int>>& mat...

2020-04-28 17:16:55

leetcode 238. 除自身以外数组的乘积

https://leetcode-cn.com/problems/product-of-array-except-self/这种需要左边、右边连续区间的计算结果的,可以先从左到右和从右到左计算一遍,同时存起来。这样不用每个都计算左右区间的结果。class Solution {public: vector<int> productExceptSelf(vector...

2020-04-28 15:43:53

leetcode 96. 不同的二叉搜索树

https://leetcode-cn.com/problems/unique-binary-search-trees/一棵树n个节点,根节点一个,剩下n-1个,左右子树分, 数量从0到n-1,然后乘起来,因为是步骤。class Solution {public: int numTrees(int n) { int dp[n+1]; mems...

2020-04-28 12:05:13

LeetCode 148. 排序链表

https://leetcode-cn.com/problems/sort-list/链表排序用递归归并排序,复杂度nlognsplit链表和插入链表有一个dummy头结点方便很多。sortlist后记得重新赋值返回的头节点。/** * Definition for singly-linked list. * struct ListNode { * int...

2020-04-28 10:26:53

leetcode 406. 根据身高重建队列

https://leetcode-cn.com/problems/queue-reconstruction-by-height/大的看不到前面小的,所以在大的插入小的,不影响。先按照身高从大到小、位置从前到后排序。然后插入到结果当中,当前结果的都是大于等于当前数字的,插入后不会影响已经插入的结果,同理,以后插入的也不会影响现在的结果,所以插入到现在的位置k。多次插入使用链表,使用a...

2020-04-27 22:32:46

leetcode 142. 环形链表 II 287. 寻找重复数

https://leetcode-cn.com/problems/linked-list-cycle-ii/https://leetcode-cn.com/problems/find-the-duplicate-number/第一道题是环形链表第二道题,每一个数字可以看作是next下标,有一个重复数字,所以可以看作是链表有环。/** * Definition...

2020-04-27 20:45:49

leetcode 215. 数组中的第K个最大元素

https://leetcode-cn.com/problems/kth-largest-element-in-an-array/关键在于枢纽元的选择上,不能选择第一个,不然很慢。class Solution {public: void quick(int l,int r,int k,vector<int>& nums){ if(l&gt...

2020-04-27 11:57:34

LeetCode 236. 二叉树的最近公共祖先

https://leetcode-cn.com/problems/lowest-common-ancestor-of-a-binary-tree/递归实现最近公共祖先,函数返回该子树是否包含p,q。有两种情况,1.p、q在同一条路径上,所以需要找到了p或者q继续向下查找,找到了了的话最近公共祖先就是这个。2.p,q在两条支路上,那么最近公共祖先的左右子树各包含pq。/** * De...

2020-04-27 11:38:33

leetcode 49. 字母异位词分组

https://leetcode-cn.com/problems/group-anagrams/实际上是一个字符计数的比较问题。先从字符数量,然后从字符按照顺序的大小,以及该字符的数量来比较。bool operator<( map<char,int> &a, map<char,int> &b){ if(a.size()!=b.si...

2020-04-27 09:53:45

LeetCode 337. 打家劫舍 III

https://leetcode-cn.com/problems/house-robber-iii/枚举,最元素的位置可能隔两层,所以不是贪心。树形dp其实就是同时返回两个结果,免得对同一个节点调用两次,免得对一个节点重复调用,使得后面出现重复。/** * Definition for a binary tree node. * struct TreeNode { * ...

2020-04-26 22:17:27

LeetCode 279. 完全平方数

https://leetcode-cn.com/problems/perfect-squares/这种最快凑数的,都是bfs。。。之前做过一道题,没反应过来。。。struct Node{ int val; int step;};class Solution {public: int numSquares(int n) { int ...

2020-04-26 21:31:13

LeetCode 75. 颜色分类

https://leetcode-cn.com/problems/sort-colors/l表示左边的位置(不包括这个位置)都是0。r表示右边的位置(不包括这个位置)都是2。cur是从左到右遍历的位置(还未读取)遇到0的时候,cur要加1。cur和l相等的时候,如果cur不加1,就乱了。cur和l不相等的时候,就是cur小于l的时候,交换后cur位置的值是1,因为cur之前的都...

2020-04-26 20:55:19

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。