zoukankan      html  css  js  c++  java
  • LC.102. Binary Tree Level Order Traversal

    https://leetcode.com/problems/binary-tree-level-order-traversal/description/

    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,null,null,15,7],
    3
    /
    9 20
    /
    15 7

    return its level order traversal as:
    [
    [3],
    [9,20],
    [15,7]
    ]
    Corner Cases

    What if the binary tree is null? Return an empty list of list in this case:
    return new ArrayList<List<Integer>>();

     1 class Solution {
     2     public List<List<Integer>> levelOrder(TreeNode root) {
     3         if (root == null) {
     4             return new ArrayList<List<Integer>>();
     5         }
     6         List<List<Integer>> res = new ArrayList<List<Integer>>();
     7         Queue<TreeNode> queue = new LinkedList<TreeNode>() ;
     8         queue.offer(root);
     9         while(!queue.isEmpty()){
    10             int size = queue.size() ;
    11             List<Integer> subRes = new ArrayList<>();
    12             for (int i =0 ; i< size ; i++ ) {
    13                 TreeNode node = queue.poll();
    14                 subRes.add(node.val);
    15                 if (node.left != null) {
    16                     queue.offer(node.left);
    17                 }
    18                 if (node.right != null) {
    19                     queue.offer(node.right);
    20                 }
    21             }
    22             res.add(subRes);
    23         }
    24         return res ;
    25     }
    26 }
  • 相关阅读:
    冒泡排序
    pdo 单例类
    php 事物处理
    支付宝支付
    反向代理和负载均衡
    execl导出
    网络层
    OSI 7层 TCP/IP 4层 综合5层
    面试总结
    CMD AMD
  • 原文地址:https://www.cnblogs.com/davidnyc/p/8668122.html
Copyright © 2011-2022 走看看