树
Rutifrl
这个作者很懒,什么都没留下…
展开
-
834. 树中距离之和(hard)
树的dp, 讲解:https://www.youtube.com/watch?v=gi2maECPOB0&ab_channel=M.C%E7%B1%B3%E5%BC%80%E6%9C%97%E5%9F%BA%E7%BD%97 建树: 0:1,2 1:0 2:0,3,4,5 3:2 4:2 5:2 class Solution { public: vector<set<int> > tree; int N; // 计算每个节点.原创 2020-10-30 14:45:30 · 171 阅读 · 0 评论 -
124. 二叉树中的最大路径和(hard)
理解题意: 路径:从一个节点到另一个节点的路径。 路径和:从一个起始节点出发的的所有路径的最大和 区分: 1.当前节点最大路径和计算:以当前节点为起点的所有路径和 2.当前节点对上一层的贡献:只能选择当前节点的最大的一条路径作为贡献,因为路径节点不可重复 对于每个当前节点,如果有左右孩子,那么访问左右孩子,叶子节点的贡献就是自身的值,父节点的最大贡献值是左右孩子贡献值中的最大值+自身的值,对于每个节点,左右孩子遍历完后,计算当前的最大路径和=当前节点的值+左子树的贡献+右子树的贡献 c...原创 2020-10-28 12:07:02 · 112 阅读 · 0 评论 -
199. 二叉树的右视图
给定一棵二叉树,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 示例: 输入:[1,2,3,null,5,null,4] 输出:[1, 3, 4] 解释: 1 <--- / \ 2 3 <--- \ \ 5 4 <--- 树的层次遍历,队列的使用 class Solution { public: vector<int> rightSi...原创 2020-10-24 00:30:55 · 80 阅读 · 0 评论 -
449. 序列化和反序列化二叉搜索树
序列化是将数据结构或对象转换为一系列位的过程,以便它可以存储在文件或内存缓冲区中,或通过网络连接链路传输,以便稍后在同一个或另一个计算机环境中重建。 设计一个算法来序列化和反序列化 二叉搜索树 。 对序列化/反序列化算法的工作方式没有限制。 您只需确保二叉搜索树可以序列化为字符串,并且可以将该字符串反序列化为最初的二叉搜索树。 编码的字符串应尽可能紧凑 输入:root = [2,1,3] 输出:[2,1,3] 二叉搜索树的特点,树的先序排序,由先序树和中序树构造二叉树,二叉搜索树的先序序列,按照先原创 2020-10-24 00:30:41 · 103 阅读 · 0 评论