美文网首页
从上往下打印二叉树

从上往下打印二叉树

作者: 我的天气很好啦 | 来源:发表于2018-10-17 23:01 被阅读0次

    2018/10/16
    🍞环境:牛客的编译环境
    🍰语言:JavaScript
    ☕️难点:没做过这方面的题,没思路
    🍊题目:从上往下打印出二叉树的每个节点,同层节点从左至右打印。
    🍎思路:用一个数组去存遍历过的节点,在判断一个节点是否有孩子节点时,先把该节点Pop出来,如果有孩子节点,利用前插的方法,把孩子节点加入数组中。循环..直到该数组为空。
    🍇代码:

    /* function TreeNode(x) {
        this.val = x;
        this.left = null;
        this.right = null;
    } */
    function PrintFromTopToBottom(root)
    {
        // write code here
        var arr = [],
            result = [];
        if(root == null)
            return result;
        arr.push(root);
        while(arr.length > 0){
            var tmp = arr.pop();
            if(tmp.left != null)
                arr.unshift(tmp.left);
            if(tmp.right != null)
                arr.unshift(tmp.right);
            result.push(tmp.val);
        }
        return result;
    }
    

    相关文章

      网友评论

          本文标题:从上往下打印二叉树

          本文链接:https://www.haomeiwen.com/subject/nzudzftx.html