@@ -0,0 +1,1119 @@
+/**%0A * Definition for binary tree%0A * public class TreeNode %7B%0A *     int val;%0A *     TreeNode left;%0A *     TreeNode right;%0A *     TreeNode(int x) %7B val = x; %7D%0A * %7D%0A */%0Apublic class Solution %7B%0A    public List%3CList%3CInteger%3E%3E levelOrderBottom(TreeNode root) %7B%0A        List%3CList%3CInteger%3E%3E results = new ArrayList %3C%3E ();%0A        List%3CInteger%3E level = new ArrayList%3C%3E ();%0A        Queue%3CTreeNode%3E queue = new LinkedList %3C%3E ();%0A        %0A        if (root != null) %7B%0A            queue.add(root);%0A            queue.add(null);%0A        %7D%0A        while(!queue.isEmpty()) %7B%0A            TreeNode n = queue.poll();%0A            if (n == null) %7B%0A                results.add(0, level);%0A                if (!queue.isEmpty()) %7B%0A                    level = new ArrayList %3C%3E ();%0A                    queue.add(null);%0A                %7D%0A            %7D else %7B%0A                level.add(n.val);%0A                if(n.left != null) %7B%0A                    queue.add(n.left);%0A                %7D%0A                if(n.right != null) %7B%0A                    queue.add(n.right);%0A                %7D%0A            %7D%0A        %7D%0A        %0A        return results;%0A    %7D%0A%7D%0A

Create Binary_Tree_Level_Order_II.java