戴璞微的博客

简单点!做事的动机简单点

剑指offer--从上往下打印二叉树

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


思路:二叉树的层次遍历


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> arrayList = new ArrayList<>();
        ArrayList<TreeNode> queue = new ArrayList<>();
        if ( root == null){
            return arrayList;
        }

        queue.add(root);
        for ( int i = 0 ; i < queue.size() ; i++){
            TreeNode node = queue.get(i);
            if ( node.left != null){
                queue.add(node.left);
            }
            if ( node.right != null){
                queue.add(node.right);
            }
            arrayList.add(node.val);
        }

        return arrayList;
    }
}
阅读更多
版权声明:本文为博主原创文章,若需转载,请注明http://blog.csdn.net/qq_30091945 https://blog.csdn.net/qq_30091945/article/details/71057257
所属专栏: 剑指offer题解
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭