zoukankan      html  css  js  c++  java
  • 【剑指offer】22 从上往下打印二叉树

    题目地址:从上往下打印二叉树

    题目描述                                   

    从上往下打印出二叉树的每个节点,同层节点从左至右打印。
       

    题目示例                                   

    输入:
    {5,4,#,3,#,2,#,1}
    返回值:
    [5,4,3,2,1]

    解法分析                                   

    本题考查二叉树的广度遍历,可以借助队列先进先出的特点来保存结点。

    代码                                         

     1 function PrintFromTopToBottom(root)
     2 {
     3     // write code here
     4     var arr = [];
     5     if(!root) return arr;
     6     var tree = [];
     7     tree.push(root);
     8     while(tree.length){
     9         var rt = tree[0];
    10         if(rt.left) tree.push(rt.left);
    11         if(rt.right) tree.push(rt.right);
    12         arr.push(tree.shift().val);
    13     }
    14     return arr;
    15 }

    执行结果                                   

  • 相关阅读:
    LeetCode
    LeetCode
    LeetCode
    LeetCode
    LeetCode
    LeetCode
    LeetCode
    LeetCode
    LeetCode
    LeetCode
  • 原文地址:https://www.cnblogs.com/sunlinan/p/14385231.html
Copyright © 2011-2022 走看看