[leetcode] 617. Merge Two Binary Trees

题目描述

给定两棵树,要求合并它们,如果节点重合则新合并的树的节点为它们之和,否则不变。

思路

简单递归,c语言怎么创建新节点忘记了,就直接写的。

代码

/**
 * Definition for a binary tree node.
 * struct TreeNode {
 *     int val;
 *     struct TreeNode *left;
 *     struct TreeNode *right;
 * };
 */
struct TreeNode* mergeTrees(struct TreeNode* t1, struct TreeNode* t2) {
    if (!t1) return t2;
    if (!t2) return t1;
    t1->val += t2->val;
    t1->left=mergeTrees(t1->left,t2->left);
    t1->right=mergeTrees(t1->right,t2->right);
    return t1;
}

猜你喜欢

转载自blog.csdn.net/bobodem/article/details/79496680