【LeetCode617】合并二叉树(遍历,返回值)
【摘要】
1.题目
2.思路
其实用前序、中序、后序遍历都可以,另外递归注意有返回值。
C++的new运算符,如int* p=new int;即只需要“new+类型名”即可分配该类型的内存空间,并返回一个...
1.题目
2.思路
其实用前序、中序、后序遍历都可以,另外递归注意有返回值。
C++的new运算符,如int* p=new int;
即只需要“new+类型名”即可分配该类型的内存空间,并返回一个对应类型的指针。
下面new TreeNode(0)
利用结构体的构造函数,返回指向TreeNode
型内存的指针,即TreeNode
型。
3.代码
/**
* 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* t1, TreeNode* t2) {
if(t1==NULL){
return t2;
}
if(t2==NULL){
return t1;
}
TreeNode* root=new TreeNode(0);//新结点
root->val=t1->val + t2->val;
root->left=mergeTrees(t1->left,t2->left);
root->right=mergeTrees(t1->right,t2->right);
return root;
}
};
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
文章来源: andyguo.blog.csdn.net,作者:山顶夕景,版权归原作者所有,如需转载,请联系作者。
原文链接:andyguo.blog.csdn.net/article/details/113777938
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)