Leet Code OJ 102. Binary Tree Level Order Traversal [Difficulty: Easy]
来源:互联网 发布:万师傅家具安装软件 编辑:程序博客网 时间:2024/05/02 02:38
题目:
Given a binary tree, return the level order traversal of its nodes’ values. (ie, from left to right, level by level).
For example:
Given binary tree {3,9,20,#,#,15,7},
return its level order traversal as:
[
[3],
[9,20],
[15,7]
]
翻译:
给定一个二叉树,返回它的节点值的层序遍历(即从左到右,一层一层的)。
分析:
采用递归的方式,先返回根节点,然后递归调用左右节点,把左右节点的结果进行按照题目要求的形式拼装。另外注意一些递归过程中节点为空的情况。
代码:
/** * 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<>(); if(root==null){ return result; } List<Integer> one=new ArrayList<>(); one.add(root.val); result.add(one); List<List<Integer>> left=levelOrder(root.left); List<List<Integer>> right=levelOrder(root.right); for(int i=0;i<left.size()||i<right.size();i++){ List<Integer> item=new ArrayList<>(); if(i<left.size()){ for(Integer k:left.get(i)){ item.add(k); } } if(i<right.size()){ for(Integer k:right.get(i)){ item.add(k); } } result.add(item); } return result; }}
2 0
- Leet Code OJ 102. Binary Tree Level Order Traversal [Difficulty: Easy]
- Leet Code OJ 107. Binary Tree Level Order Traversal II [Difficulty: Easy]
- [leet code] Binary Tree Level Order Traversal
- Leet Code OJ 226. Invert Binary Tree [Difficulty: Easy]
- Leet Code OJ 110. Balanced Binary Tree [Difficulty: Easy]
- [leet code] Binary Tree Level Order Traversal II
- [leet code] Binary Tree Zigzag Level Order Traversal
- leet code Binary Tree Zigzag Level Order Traversal
- Leet Code 103. Binary Tree Zigzag Level Order Traversal 题解
- Leet Code OJ 104. Maximum Depth of Binary Tree [Difficulty: Easy]
- Leet Code OJ 235. Lowest Common Ancestor of a Binary Search Tree [Difficulty: Easy]
- Leet Code OJ 100. Same Tree [Difficulty: Easy]
- Leet Code OJ 101. Symmetric Tree [Difficulty: Easy]
- Binary Tree Level Order Traversal (easy)
- 102. Binary Tree Level Order Traversal [easy] (Python)
- Easy-题目33:102. Binary Tree Level Order Traversal
- Leetcode 102. Binary Tree Level Order Traversal (Easy) (cpp)
- LeetCode解题报告 102. Binary Tree Level Order Traversal [easy]
- JMS 探讨一
- iOS分类和扩展(Categories和Extensions)
- volatile
- 认识View Controller
- Memory Management in Cocoa Program
- Leet Code OJ 102. Binary Tree Level Order Traversal [Difficulty: Easy]
- CALayer和UIView
- Block和GCD介绍
- 初次使用RecycleView报错,Multiple dex files define Landroid/support/annotation/AnimRes;
- iOS并发编程
- Android M 新的运行时权限开发者需要知道的一切
- C声明阅读
- UML类图关系
- 华为oj 迭代器