[LeetCode] 617.Merge Two Binary Trees
来源:互联网 发布:excel数据透视表命名 编辑:程序博客网 时间:2024/06/06 05:41
[LeetCode] 617.Merge Two Binary Trees
- 题目描述
- 解题思路
- 实验代码
题目描述
Given two binary trees and imagine that when you put one of them to cover the other, some nodes of the two trees are overlapped while the others are not.
You need to merge them into a new binary tree. The merge rule is that if two nodes overlap, then sum node values up as the new value of the merged node. Otherwise, the NOT null node will be used as the node of new tree.
Example:
Input:
Tree 1 Tree 2
1 2
/ \ / \
3 2 1 3
/ \ \
5 4 7
Output:
Merged tree:
3
/ \
4 5
/ \ \
5 4 7
解题思路
这道题难度不大,就是要将两个二叉树合并,所谓合并就是将两个二叉树对应节点的值加起来作为新的二叉树的对应节点的值。这道题的重点是每次递归和加值的时候都要判断两个二叉树的相应节点是否是空节点,注意好这点以后这道题就能很容易解决。
实验代码
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: TreeNode* mergeTrees(TreeNode* t1, TreeNode* t2) { if (t1 == NULL && t2 == NULL) return NULL; TreeNode* t = new TreeNode((t1 ? t1->val : 0) + (t2 ? t2->val : 0)); t->val = (t1 ? t1->val : 0) + (t2 ? t2->val : 0); t->left = mergeTrees((t1 ? t1->left : NULL), (t2 ? t2->left : NULL)); t->right = mergeTrees((t1 ? t1->right : NULL), (t2 ? t2->right : NULL)); return t; }};
- [leetcode]617. Merge Two Binary Trees
- leetcode.617.Merge Two Binary Trees
- [leetcode]: 617. Merge Two Binary Trees
- [Leetcode]617. Merge Two Binary Trees
- LeetCode 617. Merge Two Binary Trees (C++)
- LeetCode 617. Merge Two Binary Trees
- [LeetCode] 617. Merge Two Binary Trees
- LeetCode 617. Merge Two Binary Trees
- 【Leetcode】617. Merge Two Binary Trees
- [LeetCode]617.Merge Two Binary Trees
- LeetCode: 617. Merge Two Binary Trees
- Leetcode 617. Merge Two Binary Trees
- [leetcode]617. Merge Two Binary Trees
- [Leetcode] 617. Merge Two Binary Trees
- [LeetCode]617. Merge Two Binary Trees
- leetcode 617. Merge Two Binary Trees
- 【LeetCode】617. Merge Two Binary Trees
- [LeetCode]617. Merge Two Binary Trees<Java>
- 一般项目开发流程(瀑布模型)
- 关于草根seo网站用户回访率的相关探讨
- WinSCP和SecureCRT使用
- 机器学中的参数估计
- 575. Distribute Candies(bitset!!!)
- [LeetCode] 617.Merge Two Binary Trees
- Android Studio根据Json自动生成JavaBean
- 工程项目CPU白卡写入数据信息。
- 20171207
- Dateutil
- 查找有序二维数组中是否包含特定值
- 关于Android studio3.0的坑之butterknife 8.4.0
- LruCache缓存类源码解析
- HTTP和https的区别