617. 合并二叉樹

給定兩個(gè)二叉樹,想象當(dāng)你將它們中的一個(gè)覆蓋到另一個(gè)上時(shí),兩個(gè)二叉樹的一些節(jié)點(diǎn)便會(huì)重疊。

你需要將他們合并為一個(gè)新的二叉樹。合并的規(guī)則是如果兩個(gè)節(jié)點(diǎn)重疊,那么將他們的值相加作為節(jié)點(diǎn)合并后的新值,否則不為 NULL 的節(jié)點(diǎn)將直接作為新二叉樹的節(jié)點(diǎn)。

示例 1:
輸入:
Tree 1????Tree 2
?1 ??????2
?/ \ ?????? / \
?3?2 ?????1?3
?/ ??????? \ ??\
5???????? 4??7
輸出:
合并后的樹:
??3
??/ ?\
?4??5
?/ ?\ ??\
5?4???7

注意: 合并必須從兩個(gè)樹的根節(jié)點(diǎn)開始。
解題思路:一開始沒弄懂啥意思,看了別人的代碼發(fā)現(xiàn)思路很簡(jiǎn)單,將兩棵樹同步遍歷,如果兩個(gè)節(jié)點(diǎn)均有值則相加,否則返回另一個(gè)節(jié)點(diǎn)的值。

class Solution {
   public TreeNode mergeTrees(TreeNode t1, TreeNode t2) {
        if(t1 == null)
            return t2;
        if(t2 == null)
            return t1;
        TreeNode ans = new TreeNode(t1.val + t2.val);
        ans.left = mergeTrees(t1.left,t2.left);
        ans.right = mergeTrees(t1.right,t2.right);
        return ans;
    }
}

復(fù)雜度分析:
時(shí)間復(fù)雜度:O(N);
空間復(fù)雜度:O(N)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 題目 給定兩個(gè)二叉樹,想象當(dāng)你將它們中的一個(gè)覆蓋到另一個(gè)上時(shí),兩個(gè)二叉樹的一些節(jié)點(diǎn)便會(huì)重疊。 你需要將他們合并為一...
    禾木清清閱讀 286評(píng)論 0 0
  • 題目 難度:★★☆☆☆類型:二叉樹 給定兩個(gè)二叉樹,想象當(dāng)你將它們中的一個(gè)覆蓋到另一個(gè)上時(shí),兩個(gè)二叉樹的一些節(jié)點(diǎn)便...
    玖月晴閱讀 1,535評(píng)論 0 0
  • 給定兩個(gè)二叉樹,想象當(dāng)你將它們中的一個(gè)覆蓋到另一個(gè)上時(shí),兩個(gè)二叉樹的一些節(jié)點(diǎn)便會(huì)重疊。你需要將他們合并為一個(gè)新的二...
    閉門造折閱讀 274評(píng)論 0 0
  • 遞歸實(shí)現(xiàn):這里沒有新建節(jié)點(diǎn),如果某一棵樹節(jié)點(diǎn)為空,那么返回另一棵樹對(duì)應(yīng)位置節(jié)點(diǎn)。
    不胖二十斤不改名zz閱讀 326評(píng)論 0 0
  • 初戀,多么美好的名詞……總是讓我們充滿幻想和喜悅,當(dāng)你擁有的那一刻,仿佛得到了全世界…沒有了父母的約束,沒有了老師...
    小瘋子kimily閱讀 465評(píng)論 0 0

友情鏈接更多精彩內(nèi)容