Leet Code OJ 102. Binary Tree Level Order Traversal [Difficulty: Easy]
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                Leet Code OJ 102. Binary Tree Level Order Traversal [Difficulty: Easy]
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.                        
                                題目: 
 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] 
 ]
翻譯: 
 給定一個二叉樹,返回它的節(jié)點值的層序遍歷(即從左到右,一層一層的)。
分析: 
 采用遞歸的方式,先返回根節(jié)點,然后遞歸調(diào)用左右節(jié)點,把左右節(jié)點的結(jié)果進行按照題目要求的形式拼裝。另外注意一些遞歸過程中節(jié)點為空的情況。
代碼:
/*** 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;} }總結(jié)
以上是生活随笔為你收集整理的Leet Code OJ 102. Binary Tree Level Order Traversal [Difficulty: Easy]的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: Leet Code OJ 26. Rem
- 下一篇: MongoDB学习笔记(四)使用Java
