题目:
617. 合并二叉树 - 力扣(LeetCode)
题解:
/*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}* TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/
class Solution {
public:TreeNode* mergeTrees(TreeNode* root1, TreeNode* root2) {if(root1 && root2){root1->val += root2->val;// 直接在 root1 上合并,所以这里递归的节点都是root1root1->left = mergeTrees(root1->left,root2->left);root1->right = mergeTrees(root1->right,root2->right);}return root1 ? root1 : root2;}
};
优秀题解:617. 合并二叉树 - 力扣(LeetCode)