题目描述
给定两棵树,要求合并它们,如果节点重合则新合并的树的节点为它们之和,否则不变。
思路
简单递归,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;
}