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

从上往下打印二叉树

作者: twilight_mao | 来源:发表于2018-10-26 19:20 被阅读0次

题目描述

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

思路

1.层序遍历二叉树,可利用队列,某节点出队,然后将其左右节点入队。

代码

import java.util.ArrayList;
/**
public class TreeNode {
    int val = 0;
    TreeNode left = null;
    TreeNode right = null;

    public TreeNode(int val) {
        this.val = val;
    }
}
*/
public class Solution {
    public ArrayList<Integer> PrintFromTopToBottom(TreeNode root) {
          ArrayList<Integer> list = new ArrayList<>();
        ArrayList<TreeNode> temp = new ArrayList<>();
        if(root==null){
            return list;
        }
        temp.add(root);
        while(temp.size()!=0){
            TreeNode node=temp.remove(0);
            if(node.left!=null){
                temp.add(node.left);
            }
            if(node.right!=null){
                temp.add(node.right);
            }
            list.add(node.val);
        }
        return list; 
    }
}

相关文章

网友评论

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

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