Binary Tree Level Order Traversal

来源:互联网 发布:北大软禁季羡林 知乎 编辑:程序博客网 时间:2024/06/05 03:17
/** * Definition for binary tree * public class TreeNode { *     int val; *     TreeNode left; *     TreeNode right; *     TreeNode(int x) { val = x; } * } */public class Solution {    public ArrayList<ArrayList<Integer>> levelOrder(TreeNode root) {        ArrayList<ArrayList<Integer>> res = new ArrayList<ArrayList<Integer>>();if(root == null){return res;}ArrayList<TreeNode> tmp = new ArrayList<TreeNode>();tmp.add(root);while(tmp.size() != 0){ArrayList<TreeNode> next = new ArrayList<TreeNode>();ArrayList<Integer> thisLevelNode = new ArrayList<Integer>();for(int i = 0 ; i < tmp.size() ; i++){thisLevelNode.add(tmp.get(i).val);if(tmp.get(i).left != null){next.add(tmp.get(i).left);}if(tmp.get(i).right != null){next.add(tmp.get(i).right);}}tmp = next;res.add(thisLevelNode);}return res;    }}
原来之前做的是

Binary Tree Level Order Traversal

  II ,现在做的是I,这样就直接打完就过了
0 0
原创粉丝点击