zoukankan      html  css  js  c++  java
  • Binary Tree Level Order Traversal leetcode java

    题目

    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},

        3
       / 
      9  20
        /  
       15   7
    

    return its level order traversal as:

    [
      [3],
      [9,20],
      [15,7]
    ]
    

    题解
    这道题就是用传统的BFS来做。代码如下:
     1    public ArrayList<ArrayList<Integer>> levelOrder(TreeNode root) {  
     2         ArrayList<ArrayList<Integer>> res = new ArrayList<ArrayList<Integer>>();  
     3         if(root == null
     4             return res;  
     5         
     6         LinkedList<TreeNode> queue = new LinkedList<TreeNode>();  
     7         queue.add(root);  
     8         int curLevCnt = 1;  
     9         int nextLevCnt = 0;  
    10         ArrayList<Integer> levelres = new ArrayList<Integer>();  
    11         
    12         while(!queue.isEmpty()){  
    13             TreeNode cur = queue.poll();  
    14             curLevCnt--;  
    15             levelres.add(cur.val);  
    16             
    17             if(cur.left != null){  
    18                 queue.add(cur.left);  
    19                 nextLevCnt++;  
    20             }  
    21             if(cur.right != null){  
    22                 queue.add(cur.right);  
    23                 nextLevCnt++;  
    24             }  
    25               
    26             if(curLevCnt == 0){  
    27                 curLevCnt = nextLevCnt;  
    28                 nextLevCnt = 0;  
    29                 res.add(levelres);  
    30                 levelres = new ArrayList<Integer>();  
    31             }  
    32         }  
    33         return res;  
    34     } 


  • 相关阅读:
    springboot 实现 aop
    使用@import导入实现了ImportBeanDefinitionRegistrar接口的类,不能被注册为bean
    Spring Boot 动态数据源(多数据源自动切换)
    springboot2动态数据源的绑定
    三分钟学会@Autowired@Qualifier@Primary注解
    java复制文件的4种方式
    五款最好的免费同步软件
    springboot2多数据源完整示例
    WebSocket 结合 Nginx 实现域名及 WSS 协议访问
    Spring的注解@Qualifier注解
  • 原文地址:https://www.cnblogs.com/springfor/p/3891391.html
Copyright © 2011-2022 走看看