您的位置:首页 > 编程语言 > Java开发

【leetcode】102. Binary Tree Level Order Traversal

2016-07-13 00:00 483 查看
摘要: java版本

好久不管理,好久不做题了,真是很惭愧。毕业咯,送走了一批很不想分开的人,不过生活从不会停止,我会想念。

这一道题hin简单,就是把二叉树给打印出来,不多说,下面是我的解题记录。

/**
* Definition for a binary tree node.
* public class TreeNode {
*     int val;
*     TreeNode left;
*     TreeNode right;
*     TreeNode(int x) { val = x; }
* }
*/
public class Solution {
public List<List<Integer>> levelOrder(TreeNode root) {
List<List<Integer>> result = new ArrayList<List<Integer>>();
levelOrder(root,0,result);
return result;
}
//add root
public void levelOrder(TreeNode root, int level, List<List<Integer>> result) {
if(root == null)
return;

List<Integer> temp = null;
if(result.size()<level+1){
temp = new ArrayList<Integer>();
result.add(temp);
}else{
temp = result.get(level);
}

temp.add(root.val);
levelOrder(root.left,level+1,result);
levelOrder(root.right,level+1,result);
}
}

今天就这样吧,下午还要陪boss出去,心好累。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java leetcode binary tree