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

    题目链接

    题目大意:打印二叉树的层序遍历。

    法一:见116的利用队列的层序遍历法的第二种解法。代码如下(耗时3ms):

     1     public List<List<Integer>> levelOrder(TreeNode root) {
     2         List<List<Integer>> res = new ArrayList<List<Integer>>();
     3         if(root == null) {
     4             return res;
     5         }
     6         Queue<TreeNode> q = new LinkedList<TreeNode>();
     7         q.offer(root);
     8         while(!q.isEmpty()) {
     9             int cnt = q.size();
    10             List<Integer> listLevel = new ArrayList<Integer>();
    11             for(int i = 0; i < cnt; i++) {
    12                 TreeNode tmp = q.poll();
    13                 listLevel.add(tmp.val);
    14                 if(tmp.left != null) {
    15                     q.offer(tmp.left);
    16                 }
    17                 if(tmp.right != null) {
    18                     q.offer(tmp.right);
    19                 }
    20             }
    21             res.add(new ArrayList<Integer>(listLevel));
    22         }
    23         return res;
    24     }
    View Code
  • 相关阅读:
    对坐标点的离散化
    线段树-离散化处理点
    树状数组
    线段树
    dfs
    vector
    go 参数传递的是值还是引用 (转)
    go 数组指针 指针数组
    go 协程
    go 接口实现
  • 原文地址:https://www.cnblogs.com/cing/p/9006454.html
Copyright © 2011-2022 走看看