zoukankan      html  css  js  c++  java
  • 《剑指offer》— JavaScript(22)从上往下打印二叉树

    从上往下打印二叉树

    题目描述

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


    思路

    1. 借助两个辅助队列,一个用来存放结点,一个用来存放结点值;
    2. 先将根节点加入到队列中,然后遍历队列中的元素,遍历过程中,访问该元素的左右节点,再将左右子节点加入到队列中来。

    实现代码

    /* function TreeNode(x) {
        this.val = x;
        this.left = null;
        this.right = null;
    } */
    function PrintFromTopToBottom(root) {
        var queue = [];
        queue.push(root);
        var result = [];
    
        if (root == null) {
            return result;
        }
    
        while (queue.length) {
    
            var temp = queue.shift();
    
            result.push(temp.val);
    
            if (temp.left) {
                queue.push(temp.left);
            }
            if (temp.right) {
                queue.push(temp.right);
            }
        }
    
        return result;
    
    }
    
  • 相关阅读:
    mysql 优化
    对象的特征
    对象的回收机制
    对象产生的过程
    python 内容查询小助手
    python笔记
    python安装MySQLdb模块
    python笔记
    python笔记
    定期删除备份文件,节省磁盘空间脚本
  • 原文地址:https://www.cnblogs.com/echovic/p/6482719.html
Copyright © 2011-2022 走看看