leetcode 617. Merge Two Binary Trees | 617. 合并二叉树(Java)
生活随笔
收集整理的這篇文章主要介紹了
leetcode 617. Merge Two Binary Trees | 617. 合并二叉树(Java)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
題目
https://leetcode-cn.com/problems/merge-two-binary-trees/
題解
測試用例
輸入:
[1,3,2,5]
[2,1,3,null,4,null,7]
[1]
[1,2]
[1,null,2,null,3,null,4]
[1,2,null,3,null,4,null,5]
答案:
[3,4,5,5,4,null,7]
[2,2]
[2,2,2,3,null,null,3,4,null,null,4,5]
思路
同時遍歷左右兩棵二叉樹,把右邊的樹上的值加到左邊來。
這樣做有一個不嚴(yán)謹(jǐn)?shù)牡胤?#xff0c;是改變了原有二叉樹的值,而題目中要求返回一個 new tree。
public static TreeNode mergeTrees(TreeNode root1, TreeNode root2) {if (root1 != null && root2 != null) {root1.val = root1.val + root2.val; // already ensure both nodes are not nullif (root1.left != null && root2.left != null)mergeTrees(root1.left, root2.left);if (root1.right != null && root2.right != null)mergeTrees(root1.right, root2.right);if (root1.left == null)root1.left = root2.left;if (root1.right == null)root1.right = root2.right;} else if (root1 == null) {root1 = root2;}return root1; }總結(jié)
以上是生活随笔為你收集整理的leetcode 617. Merge Two Binary Trees | 617. 合并二叉树(Java)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: leetcode 606. Constr
- 下一篇: How to Set up SSH Tu