树
C-Liueasymoney
这个作者很懒,什么都没留下…
展开
-
【LeetCode刷题笔记Java】437.路径总和3
public class MySolution { public int pathSum(TreeNode root, int targetSum){ // key存放前缀和是几,value存放前缀和为key的有几个 Map<Integer, Integer> prefixSumMap = new HashMap<>(); // 加一个前缀和为0的,代表当前节点,也就是从根节点到根节点的前缀和 prefixSum原创 2021-07-05 15:57:12 · 167 阅读 · 0 评论 -
【LeetCode刷题笔记Java】124.二叉树中的最大路径和
题目:路径 被定义为一条从树中任意节点出发,沿父节点-子节点连接,达到任意节点的序列。同一个节点在一条路径序列中 至多出现一次 。该路径 至少包含一个 节点,且不一定经过根节点。路径和 是路径中各节点值的总和。给你一个二叉树的根节点 root ,返回其 最大路径和 。示例:输入:root = [1,2,3]输出:6解释:最优路径是 2 -> 1 -> 3 ,路径和为 2 + 1 + 3 = 6DFS private int maxValue; public.原创 2021-07-04 00:26:45 · 185 阅读 · 0 评论 -
【LeetCode刷题笔记Java】114.二叉树展开为链表
题目:给你二叉树的根结点 root ,请你将它展开为一个单链表:展开后的单链表应该同样使用 TreeNode ,其中 right 子指针指向链表中下一个结点,而左子指针始终为 null 。展开后的单链表应该与二叉树 先序遍历 顺序相同。示例:输入:root = [1,2,5,3,4,null,6]输出:[1,null,2,null,3,null,4,null,5,null,6]后序遍历自底向上调整左右节点 public void flatten(TreeNode root){.原创 2021-07-02 14:37:05 · 131 阅读 · 0 评论 -
【LeetCode刷题笔记Java】102.二叉树的层序遍历
题目:示例:本题重点在于怎么把BFS输出的结果变成分层的用map保存层数的方法: public List<List<Integer>> levelOrder(TreeNode root){ List<List<Integer>> res = new ArrayList<>(); if (root == null){ return res; } .原创 2021-07-01 10:34:59 · 64 阅读 · 0 评论 -
【LeetCode刷题笔记Java】297.二叉树的序列化与反序列化
题目:序列化是将一个数据结构或者对象转换为连续的比特位的操作,进而可以将转换后的数据存储在一个文件或者内存中,同时也可以通过网络传输到另一个计算机环境,采取相反方式重构得到原数据。请设计一个算法来实现二叉树的序列化与反序列化。这里不限定你的序列 / 反序列化算法执行逻辑,你只需要保证一个二叉树可以被序列化为一个字符串并且将这个字符串反序列化为原始的树结构。示例:输入:root = [1,2,3,null,null,4,5]输出:[1,2,3,null,null,4,5] // 使用先序.原创 2021-06-28 12:00:33 · 77 阅读 · 0 评论 -
【LeetCode刷题笔记Java】98.验证二叉搜索树
题目:给定一个二叉树,判断其是否是一个有效的二叉搜索树。假设一个二叉搜索树具有如下特征:节点的左子树只包含小于当前节点的数。节点的右子树只包含大于当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。示例:输入:2/ \1 3输出: true// 利用递归中序遍历// preValue保存上一个遍历过的节点的值,用来与当前节点值做比较public int preValue = Integer.MIN_VALUE;// 为了通过leetcode令人无语的用例,设定一个c.原创 2021-06-27 15:28:35 · 107 阅读 · 0 评论 -
【剑指offer刷题笔记】68-2.二叉树的最近公共祖先
剑指No.68-2_二叉树的最近公共祖先题目:给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”示例:输入: root = [3,5,1,6,2,0,8,null,null,7,4], p = 5, q = 1输出: 3解释: 节点 5 和节点 1 的最近公共祖先是节点 3。本题与上一题的区别就原创 2021-06-04 15:46:02 · 59 阅读 · 0 评论