会员
周边
新闻
博问
闪存
赞助商
YouClaw
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
azriel
博客园
首页
新随笔
联系
订阅
管理
上一页
1
2
3
4
5
下一页
2026年3月15日
第六章 二叉树part08
摘要: 2026.03.15 02.22 第二十六天 669 修剪二叉搜索树 有一点难度。关键是了解左右第一个区间之外的节点,他们的子树可能也是符合区间要求的。 递归法: class Solution { public: TreeNode* trimBST(TreeNode* root, int low,
阅读全文
posted @ 2026-03-15 15:18 遠くの君
阅读(4)
评论(0)
推荐(0)
2026年3月14日
第六章 二叉树part07
摘要: 2026.03.14 02.21 第二十五天 235 二叉搜索树的最近公共祖先 本题也简单。关键是利用二叉搜索树的性质,避免对整个树进行遍历。 写的过程中出错用vs进行debug就行。 迭代法: class Solution { public: TreeNode* lowestCommonAnces
阅读全文
posted @ 2026-03-14 21:56 遠くの君
阅读(8)
评论(0)
推荐(0)
第六章 二叉树part06
摘要: 2026.03.14 02.14 第十八天 530 二叉搜索树的最小绝对差 本题很简单。关键是了解二叉搜索树在中序遍历下其实就是一个从小到大的有序数组。 每次遍历保存前一个节点的地址,而后与当前节点比较从而更新相邻节点的最小差值,最后然后将前一个节点的地址更新为当前节点地址即可。 class Sol
阅读全文
posted @ 2026-03-14 16:15 遠くの君
阅读(8)
评论(0)
推荐(0)
2026年3月13日
第六章 二叉树part05
摘要: 2026.03.13 02.13 第十七天 654 最大二叉树 本题难度不大,在前一天的基础上很快就能够写出来。 可以注意一下标准库提供的查找最大值的方法和区间范围控制 使用了中间节点,就要在传入右边区间的时候起始值多加一。 class Solution { private: TreeNode* t
阅读全文
posted @ 2026-03-13 21:08 遠くの君
阅读(4)
评论(0)
推荐(0)
第六章 二叉树part04
摘要: 2026.03.13 02.12 第十六天 513 找树左下角的值 左下角的值是最深一层,从左到右第一个叶子节点的值。 递归法: 遍历到每个节点都判断当前深度,每一次出现更深的节点就可能是左下角的节点,最后一次出现的更深的节点就是要找的节点。 class Solution { public: int
阅读全文
posted @ 2026-03-13 11:05 遠くの君
阅读(4)
评论(0)
推荐(0)
2026年3月11日
第六章 二叉树part03
摘要: 2026.03.08 02.11 第十五天 110 平衡二叉树 既然要求比较高度,必然是要后序遍历。 递归三步曲分析: 1.明确递归函数的参数和返回值 参数:当前传入节点。 返回值:以当前传入节点为根节点的树的高度。 那么如何标记左右子树是否差值大于1呢? 如果当前传入节点为根节点的二叉树已经不是二
阅读全文
posted @ 2026-03-11 21:16 遠くの君
阅读(4)
评论(0)
推荐(0)
2026年3月8日
第六章 二叉树part02
摘要: 2026.02.10 第十四天 C++自带了swap函数,可以直接交换两个子节点的地址 226 翻转二叉树 注意每次翻转只更换了当前节点的父节点,也就是调整了当前节点的顺序,而没有翻转当前节点的子节点,因此只需要递归遍历一遍所有节点即可。 可以使用前序、后序和中序遍历,期终中序两次翻转都要使用lef
阅读全文
posted @ 2026-03-08 21:01 遠くの君
阅读(5)
评论(0)
推荐(0)
2026年2月9日
第六章 二叉树part01
摘要: 2026.02.09 第十三天 144 二叉树的前序遍历 二叉树基础 由于是前序遍历,把每一层递归需要处理的内容放在最前面即可~ class Solution { private: void traversal(TreeNode* node, vector<int>& vec) { if(node
阅读全文
posted @ 2026-02-09 16:34 遠くの君
阅读(8)
评论(0)
推荐(0)
2026年2月8日
第五章 栈与队列part02
摘要: 2026.02.07 第十一天 引入了新内容:单调队列和优先级队列 150 逆波兰表达式求值 很简单的一道题,不需要自己将中缀表达式转换为后缀表达式,也不需要处理除以0等特殊情况,直接使用for循环实现遍历,配合栈即可解决。 遇到运算数就入栈,遇到符号就出栈两个数,运算之后将结果入栈,for循环结束
阅读全文
posted @ 2026-02-08 21:56 遠くの君
阅读(5)
评论(0)
推荐(0)
2026年2月7日
第五章 栈与队列part01
摘要: 2026.02.06 第十天 232 用栈实现队列 比较简单的一道题,知道栈先入后出的原理后使用两个栈进行配合即可实现队列。 一个栈专门用于入队,一个栈专门用于出队,当出队栈中没有元素之后将入队栈的元素全部转移到出队栈即可。 代码实现: class MyQueue { public: stack<i
阅读全文
posted @ 2026-02-07 21:46 遠くの君
阅读(5)
评论(0)
推荐(0)
上一页
1
2
3
4
5
下一页
公告