按层打印二叉树

来源:互联网 发布:初学者mint和ubuntu 编辑:程序博客网 时间:2024/05/07 13:57
class Solution { private class TreeNode {    int val = 0;    TreeNode left = null;    TreeNode right = null;    public TreeNode(int val) {        this.val = val;    }}    ArrayList<ArrayList<Integer>> Print(TreeNode pRoot) {    ArrayList<ArrayList<Integer>> result = new ArrayList<ArrayList<Integer>>();      ArrayList<TreeNode> ele = new ArrayList<TreeNode>();    ele.add(pRoot);    if(pRoot==null)    return result;      while(!ele.isEmpty()){    ArrayList<Integer> temp = new ArrayList<Integer>();    int len = ele.size();    for(int i = 0;i<len;i++){    TreeNode node = ele.get(0);    if(node.left!=null)    ele.add(node.left);    if(node.right!=null)    ele.add(node.right);    temp.add(node.val);    ele.remove(0);    }       result.add(temp);    }    return result;    }}

0 0