- 博客(51)
- 收藏
- 关注
原创 第五十七天|739. 每日温度 496. 下一个更大元素 I
单调栈就是把数值一个个放进栈中,每次放之前进行对比,如果要进来的数值比栈顶的数值大/小就把栈顶弹出,使栈顶到栈底的数值一定是递增/递减的。
2023-12-07 12:08:11 472
原创 第五十三天|1143. 最长公共子序列 1035. 不相交的线 53. 最大子数组和
和最长公共子数组有点像,但是那题dp含义是ij结尾的子数组长度,这题是ij结尾的数组中最长子序列的长度,所以做法有些不同。
2023-12-02 16:54:12 340
原创 第四十八天|121. 买卖股票的最佳时机 122. 买卖股票的最佳时机 II
二维dp数组【0】是持有股票的时候,【1】是不持有股票时候的最大现金。
2023-11-28 13:40:54 345
原创 第三十三天|1005. K 次取反后最大化的数组和 134. 加油站 135. 分发糖果
【代码】第三十三天|1005. K 次取反后最大化的数组和 134. 加油站 135. 分发糖果。
2023-11-13 20:52:29 23
原创 第二十九天|491. 递增子序列 46. 全排列 47. 全排列 II
与子集思维类似,但是要if(path.size()>1)才res.push_back(path);同时每一层用hash去重。
2023-11-08 14:05:48 36
原创 第二十七天|39. 组合总和 40.组合总和II 131.分割回文串
给你一个的整数数组candidates和一个目标整数target,找出candidates中可以使数字和为目标数target的 所有,并以列表形式返回。你可以按返回这些组合。candidates中的数字可以。如果至少一个数字的被选数量不同,则两种组合是不同的。对于给定的输入,保证和为target的不同组合数少于150个。剪枝在这一轮直接进行,排序后如果加上这轮这个值已经超过了,那就不继续了。
2023-11-07 12:18:08 36
原创 第二十三天|669. 修剪二叉搜索树 108. 将有序数组转换为二叉搜索树 538. 把二叉搜索树转换为累加树
当结点大于区间,转向左子树,因为左子树都小,右子树都大可以直接抛弃。反之转向右子树。
2023-11-02 12:44:27 29
原创 第二十一天|530. 二叉搜索树的最小绝对差 501二叉搜索树中的众数 236. 二叉树的最近公共祖先
使用双指针,利用二叉搜索树递增的性质,中序搜索的同时记录最小差值。
2023-10-31 16:44:35 61 1
原创 第二十天|654. 最大二叉树 617. 合并二叉树 700. 二叉搜索树中的搜索 98. 验证二叉搜索树
有构造二叉树的经验后这题还是比较简单, 通过左右数组不断递归。
2023-10-30 22:33:03 29
原创 第十八天|513. 找树左下角的值 112. 路径总和 113. 路径总和 II 106. 从中序与后序遍历序列构造二叉树 105. 从前序与中序遍历序列构造二叉树
二叉树好勾吧难!
2023-10-28 20:35:11 45 1
原创 第十七天|110. 平衡二叉树 257. 二叉树的所有路径 404. 左叶子之和
自己先做了个等于是两个递归的做法但是效果还可以。其实就用int返回-1也可以代表false。递归函数中自身不能出现太多次。
2023-10-27 22:35:07 45 1
原创 第十六天|104. 二叉树的最大深度 111. 二叉树的最小深度 222. 完全二叉树的节点个数
简单的递归做法,获取左右子树的深度,然后较大的加一为自身深度。不断递归。迭代做法,使用层次遍历。
2023-10-26 15:11:46 30
原创 第十五天|二叉树的层次遍历 226. 翻转二叉树 101. 对称二叉树
依靠队列,当上一层的所有结点都出队后,队列中只剩下本层的所有结点,当前队列的大小就是本层大小,队列空则说明结束。
2023-10-25 13:58:36 20
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人