摘要: 给你两棵二叉树: root1 和 root2 。 想象一下,当你将其中一棵覆盖到另一棵之上时,两棵树上的一些节点将会重叠(而另一些不会)。你需要将这两棵树合并成一棵新二叉树。合并的规则是:如果两个节点重叠,那么将这两个节点的值相加作为合并后节点的新值;否则,不为 null 的节点将直接作为新二叉树的 阅读全文
posted @ 2023-04-07 20:14 xiazichengxi 阅读(26) 评论(0) 推荐(0)
摘要: 给定两个整数数组 inorder 和 postorder ,其中 inorder 是二叉树的中序遍历, postorder 是同一棵树的后序遍历,请你构造并返回这颗二叉树 。 class Solution { public: TreeNode* buildTree(vector<int>& inor 阅读全文
posted @ 2023-04-07 16:34 xiazichengxi 阅读(15) 评论(0) 推荐(0)
摘要: 给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径。 说明: 叶子节点是指没有子节点的节点。 示例: 给定如下二叉树,以及目标和 sum = 22 class Solution { private: void dfs_find(TreeNode* cur,int su 阅读全文
posted @ 2023-04-07 15:14 xiazichengxi 阅读(11) 评论(0) 推荐(0)
摘要: 给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum 。如果存在,返回 true ;否则,返回 false 。 叶子节点 是指没有子节点的节点。 class Solution 阅读全文
posted @ 2023-04-07 14:58 xiazichengxi 阅读(19) 评论(0) 推荐(0)
摘要: 给定一个二叉树的 根节点 root,请找出该二叉树的 最底层 最左边 节点的值。 假设二叉树中至少有一个节点。 class Solution { public: int findBottomLeftValue(TreeNode* root) { if (root == nullptr) return 阅读全文
posted @ 2023-04-07 14:30 xiazichengxi 阅读(7) 评论(0) 推荐(0)