首页 > 其他 > 详细

剑指 Offer 32 - I. 从上到下打印二叉树

时间:2021-03-29 13:11:19      阅读:27      评论:0      收藏:0      [点我收藏+]

技术分享图片

 

 使用递归的方式解决,先新建一个数组用于存放数据,树的每一层都是一个第二维的数组,然后再将数组扁平化

var levelOrder = function(root) {
    let levelArr = [];
    build(root,0);
    function build(node,level) {
        if(node === null) return null;
        if(!levelArr[level]) levelArr[level] = []; //没有这一步后续无法push
        levelArr[level].push(node.val);
        if(node.left) build(node.left,level+1);
        if(node.right) build(node.right,level+1);
    }
    levelArr = levelArr.reduce((pre,cur) => pre.concat(...cur),[]); //数组扁平化
    return levelArr;
};

 

剑指 Offer 32 - I. 从上到下打印二叉树

原文:https://www.cnblogs.com/jmh0113/p/14591354.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!