• 《剑指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;
    
    }
    
  • 相关阅读:
    elasticsearch的安装
    default_scope and unscoped
    RSpec + Spork + Autotest 给Rails 3添加快速自动化测试
    ubuntu收过带个winmail.dat的邮件
    网站链接
    github
    js笔记
    mba首页js
    mba精锐视角js
    mongodb常用命令
  • 原文地址:https://www.cnblogs.com/echovic/p/6482719.html
Copyright © 2020-2023  润新知