摘要:算法思路判斷樹是否為空同時(shí)也是終止條件。分別對(duì)左右子樹進(jìn)行遞歸。代碼實(shí)現(xiàn)判斷當(dāng)前樹是否為左右子樹結(jié)點(diǎn)交換分別對(duì)左右子樹進(jìn)行遞歸返回樹的根節(jié)點(diǎn)歡迎一起加入到開源倉(cāng)庫(kù),可以向提交您其他語(yǔ)言的代碼。
Time:2019/4/21
Title: Invert Binary Tree
Difficulty: Easy
Author: 小鹿
Invert a binary tree.
反轉(zhuǎn)二叉樹
Example:
Input:
4 / 2 7 / / 1 3 6 9
Output:
4 / 7 2 / / 9 6 3 1Solve:
由上圖可以分析反轉(zhuǎn)二叉樹,只是對(duì)左右子樹的數(shù)據(jù)進(jìn)行交換,再仔細(xì)觀察,并不是每個(gè)節(jié)點(diǎn)的左右子樹進(jìn)行交換,而是左子樹的葉子節(jié)點(diǎn)和右子樹的葉子節(jié)點(diǎn)進(jìn)行交換,另外兩個(gè)子節(jié)點(diǎn)進(jìn)行交換,那我們不得不用到遞歸了。
1)判斷樹是否為空(同時(shí)也是終止條件)。2)左右子樹結(jié)點(diǎn)交換。
3)分別對(duì)左右子樹進(jìn)行遞歸。
var invertTree = function(root) { //判斷當(dāng)前樹是否為 null if(root == null) return root; //左右子樹結(jié)點(diǎn)交換 let right = root.right; let left = root.left; root.right = left; root.left = right; //分別對(duì)左右子樹進(jìn)行遞歸 invertTree(left); invertTree(right); //返回樹的根節(jié)點(diǎn) return root; };
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/103831.html
摘要:月下半旬攻略道題,目前已攻略題。目前簡(jiǎn)單難度攻略已經(jīng)到題,所以后面會(huì)調(diào)整自己,在刷算法與數(shù)據(jù)結(jié)構(gòu)的同時(shí),攻略中等難度的題目。 Create by jsliang on 2019-07-30 16:15:37 Recently revised in 2019-07-30 17:04:20 7 月下半旬攻略 45 道題,目前已攻略 100 題。 一 目錄 不折騰的前端,和咸魚有什么區(qū)別...
摘要:原題鏈接遞歸法復(fù)雜度時(shí)間空間遞歸棧空間思路這個(gè)難倒大神的題也是非常經(jīng)典的一道測(cè)試對(duì)二叉樹遍歷理解的題。遞歸的終止條件是當(dāng)遇到空節(jié)點(diǎn)或葉子節(jié)點(diǎn)時(shí),不再交換,直接返回該節(jié)點(diǎn)。代碼給出的是后序遍歷的自下而上的交換,先序遍歷的話就是自上而下的交換。 Invert Binary Tree Invert a binary tree. 4 / 2 7 / ...
摘要:微信公眾號(hào)記錄截圖記錄截圖目前關(guān)于這塊算法與數(shù)據(jù)結(jié)構(gòu)的安排前。已攻略返回目錄目前已攻略篇文章。會(huì)根據(jù)題解以及留言內(nèi)容,進(jìn)行補(bǔ)充,并添加上提供題解的小伙伴的昵稱和地址。本許可協(xié)議授權(quán)之外的使用權(quán)限可以從處獲得。 Create by jsliang on 2019-07-15 11:54:45 Recently revised in 2019-07-15 15:25:25 一 目錄 不...
摘要:小鹿題目二叉樹的最大深度給定一個(gè)二叉樹,找出其最大深度。二叉樹的深度為根節(jié)點(diǎn)到最遠(yuǎn)葉子節(jié)點(diǎn)的最長(zhǎng)路徑上的節(jié)點(diǎn)數(shù)。求二叉樹的深度,必然要用到遞歸來(lái)解決。分別遞歸左右子樹。 Time:2019/4/22Title: Maximum Depth of Binary TreeDifficulty: MediumAuthor:小鹿 題目:Maximum Depth of Binary Tre...
摘要:小鹿題目二叉樹中序遍歷給定一個(gè)二叉樹,返回它的中序遍歷。通常遞歸的方法解決二叉樹的遍歷最方便不過,但是我還是喜歡增加點(diǎn)難度,用一般的迭代循環(huán)來(lái)實(shí)現(xiàn)。 Time:2019/4/25Title:Binary Tree Inorder TraversalDifficulty: MediumAuthor:小鹿 題目:Binary Tree Inorder Traversal(二叉樹中序遍歷...
閱讀 2737·2023-04-26 02:28
閱讀 2571·2021-09-27 13:36
閱讀 3141·2021-09-03 10:29
閱讀 2775·2021-08-26 14:14
閱讀 2115·2019-08-30 15:56
閱讀 847·2019-08-29 13:46
閱讀 2621·2019-08-29 13:15
閱讀 467·2019-08-29 11:29