Leetcode617.|Leetcode617. 合并二叉树

题目 给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。
【Leetcode617.|Leetcode617. 合并二叉树】你需要将他们合并为一个新的二叉树。合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并后的新值,否则不为 NULL 的节点将直接作为新二叉树的节点。
示例 1:

输入: Tree 1Tree 2 12 / \/ \ 3213 /\\ 547 输出: 合并后的树: 3 / \ 45 / \\ 547

注意: 合并必须从两个树的根节点开始。
Swift解法
class Solution { func mergeTrees(_ t1: TreeNode?, _ t2: TreeNode?) -> TreeNode? { if t1 == nil&& t2 == nil { return nil } var sum = 0 if let val = t1?.val {sum += val} if let val = t2?.val {sum += val} let node = TreeNode(sum) node.left = mergeTrees(t1?.left, t2?.left) node.right = mergeTrees(t1?.right, t2?.right) return node } }

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/merge-two-binary-trees

    推荐阅读