623.在二叉樹中增加一行(迭代传蹈,中等)

題目鏈接

給定一個(gè)二叉樹押逼,根節(jié)點(diǎn)為第1層,深度為 1惦界。在其第 d 層追加一行值為 v 的節(jié)點(diǎn)挑格。

添加規(guī)則:給定一個(gè)深度值 d (正整數(shù)),針對深度為 d-1 層的每一非空節(jié)點(diǎn) N沾歪,為 N 創(chuàng)建兩個(gè)值為 v 的左子樹和右子樹恕齐。

將 N 原先的左子樹,連接為新節(jié)點(diǎn) v 的左子樹;將 N 原先的右子樹显歧,連接為新節(jié)點(diǎn) v 的右子樹。

如果 d 的值為 1确镊,深度 d - 1 不存在士骤,則創(chuàng)建一個(gè)新的根節(jié)點(diǎn) v,原先的整棵樹將作為 v 的左子樹蕾域。

示例 1:

輸入: 
二叉樹如下所示:
       4
     /   \
    2     6
   / \   / 
  3   1 5   

v = 1

d = 2

輸出: 
       4
      / \
     1   1
    /     \
   2       6
  / \     / 
 3   1   5   

示例 2:

輸入: 
二叉樹如下所示:
      4
     /   
    2    
   / \   
  3   1    

v = 1

d = 3

輸出: 
      4
     /   
    2
   / \    
  1   1
 /     \  
3       1

注意:

  • 1.輸入的深度值 d 的范圍是:[1拷肌,二叉樹最大深度 + 1]。
  • 2.輸入的二叉樹至少有一個(gè)節(jié)點(diǎn)旨巷。

解答

/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode() {}
 *     TreeNode(int val) { this.val = val; }
 *     TreeNode(int val, TreeNode left, TreeNode right) {
 *         this.val = val;
 *         this.left = left;
 *         this.right = right;
 *     }
 * }
 */
class Solution {
    public TreeNode addOneRow(TreeNode root, int val, int depth) {
        if (depth == 1) return new TreeNode(val, root, null);
        TreeNode node;
        int currLevelNodeNum = 1, nextLevelNodeNum = 0, currDepth = 1;
        Queue<TreeNode> nodeQueue = new LinkedList<>();
        nodeQueue.add(root);
        while (!nodeQueue.isEmpty()) {
            node = nodeQueue.poll();
            if (currDepth == depth-1) {
                // 當(dāng)前層即為要插入一行的元素的上一行
                node.left = new TreeNode(val, node.left, null);
                node.right = new TreeNode(val, null, node.right);
            }
            if (currDepth < depth) {
                if (node.left != null) { nodeQueue.add(node.left); nextLevelNodeNum++; }
                if (node.right != null) { nodeQueue.add(node.right); nextLevelNodeNum++; }
            }
            if (--currLevelNodeNum == 0) {
                if (currDepth == depth-1) break;
                currLevelNodeNum = nextLevelNodeNum;
                nextLevelNodeNum = 0;
                currDepth++;
            }
        }
        return root;
    }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末巨缘,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子采呐,更是在濱河造成了極大的恐慌若锁,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,858評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件斧吐,死亡現(xiàn)場離奇詭異又固,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)煤率,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,372評論 3 395
  • 文/潘曉璐 我一進(jìn)店門仰冠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人蝶糯,你說我怎么就攤上這事洋只。” “怎么了昼捍?”我有些...
    開封第一講書人閱讀 165,282評論 0 356
  • 文/不壞的土叔 我叫張陵识虚,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么州袒? 我笑而不...
    開封第一講書人閱讀 58,842評論 1 295
  • 正文 為了忘掉前任莺禁,我火速辦了婚禮,結(jié)果婚禮上慌盯,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好育拨,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,857評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著欢摄,像睡著了一般熬丧。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上怀挠,一...
    開封第一講書人閱讀 51,679評論 1 305
  • 那天析蝴,我揣著相機(jī)與錄音害捕,去河邊找鬼。 笑死闷畸,一個(gè)胖子當(dāng)著我的面吹牛尝盼,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播佑菩,決...
    沈念sama閱讀 40,406評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼盾沫,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了殿漠?” 一聲冷哼從身側(cè)響起赴精,我...
    開封第一講書人閱讀 39,311評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎绞幌,沒想到半個(gè)月后蕾哟,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,767評論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡啊奄,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年渐苏,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片菇夸。...
    茶點(diǎn)故事閱讀 40,090評論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡琼富,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出庄新,到底是詐尸還是另有隱情鞠眉,我是刑警寧澤,帶...
    沈念sama閱讀 35,785評論 5 346
  • 正文 年R本政府宣布择诈,位于F島的核電站械蹋,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏羞芍。R本人自食惡果不足惜哗戈,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,420評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望荷科。 院中可真熱鬧唯咬,春花似錦、人聲如沸畏浆。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,988評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽刻获。三九已至蜀涨,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背厚柳。 一陣腳步聲響...
    開封第一講書人閱讀 33,101評論 1 271
  • 我被黑心中介騙來泰國打工氧枣, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人别垮。 一個(gè)月前我還...
    沈念sama閱讀 48,298評論 3 372
  • 正文 我出身青樓挑胸,卻偏偏與公主長得像,于是被迫代替她去往敵國和親宰闰。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,033評論 2 355

推薦閱讀更多精彩內(nèi)容