画鸵萌宠网
class Solution { public List<List<Integer>> levelOrderBottom(TreeNode root) { List<List<Integer>> result =new ArrayList<>(); if(root == null){ return result; } Queue<TreeNode> q = new LinkedList<>(); q.add(root); //新建一个以链表存储数组,每个数组和数组直接以链表的形式链接 LinkedList<ArrayList<Integer>> temp =new LinkedList<>(); while(q.size()>0){ int size = q.size(); ArrayList<Integer> list = new ArrayList<>(); while(size>0){ TreeNode f = q.poll(); list.add(f.val); if(f.left!=null){ q.add(f.left); } if(f.right!=null){ q.add(f.right); } size--; } //把每一层的数组放在前面用 addFirst()函数 temp.addFirst(new ArrayList<>(list)); result=new ArrayList<>(temp); } return result; } }
因篇幅问题不能全部显示,请点此查看更多更全内容