2024.2.15力扣每日一题——二叉树的层序遍历2

题目来源

力扣每日一题;题序:107

我的题解

方法一 普通层序遍历转置 或者 利用List的插入式添加
  1. 将普通层序遍历得到的结果,逆序一下就是结果。
  2. List.add(0,element),相当于头插法

时间复杂度:O(n)
空间复杂度:O(n)

//使用普通层序遍历转置 
public List<List<Integer>> levelOrderBottom(TreeNode root) {
    List<List<Integer>> temp=new ArrayList<>();
    if(root==null)
        return temp;
    Queue<TreeNode> queue=new LinkedList<>();
    queue.offer(root);
    while(!queue.isEmpty()){
        int sz=queue.size();
        List<Integer> l=new ArrayList<>();
        for(int i=0;i<sz;i++){
            TreeNode t=queue.poll();
            l.add(t.val);
            if(t.left!=null)
                queue.offer(t.left);
            if(t.right!=null)
                queue.offer(t.right);
        }
        temp.add(l);
    }
    //逆序
    List<List<Integer>> res=new ArrayList<>();
    for(int i=temp.size()-1;i>=0;i--){
        res.add(temp.get(i));
    }
    return res;
}
//使用List的插入式添加
public List<List<Integer>> levelOrderBottom(TreeNode root) {
   List<List<Integer>> temp=new ArrayList<>();
   if(root==null)
       return temp;
   Queue<TreeNode> queue=new LinkedList<>();
   queue.offer(root);
   while(!queue.isEmpty()){
       int sz=queue.size();
       List<Integer> l=new ArrayList<>();
       for(int i=0;i<sz;i++){
           TreeNode t=queue.poll();
           l.add(t.val);
           if(t.left!=null)
               queue.offer(t.left);
           if(t.right!=null)
               queue.offer(t.right);
       }
       //头插法
       temp.add(0,l);
   }
   return temp;
}

有任何问题,欢迎评论区交流,欢迎评论区提供其它解题思路(代码),也可以点个赞支持一下作者哈😄~

相关推荐

  1. 2024.2.15每日——2

    2024-04-02 20:44:03       16 阅读
  2. 2024.2.17每日——N

    2024-04-02 20:44:03       19 阅读
  3. 2024.2.10每日——

    2024-04-02 20:44:03       19 阅读
  4. 每日145

    2024-04-02 20:44:03       38 阅读
  5. 每日144

    2024-04-02 20:44:03       35 阅读
  6. 每日987

    2024-04-02 20:44:03       35 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-02 20:44:03       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-02 20:44:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-02 20:44:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-02 20:44:03       18 阅读

热门阅读

  1. Android invalidate、postInvalidate、requestLayout的区别

    2024-04-02 20:44:03       12 阅读
  2. FastAPI Web框架教程 第11章 请求响应的进阶用法

    2024-04-02 20:44:03       14 阅读
  3. 蓝桥杯刷题记录之质数

    2024-04-02 20:44:03       11 阅读
  4. nignx的功能包括哪些

    2024-04-02 20:44:03       13 阅读
  5. LeetCode226.翻转二叉树

    2024-04-02 20:44:03       12 阅读
  6. 洛谷 B3918 [语言月赛 202401] 图像变换

    2024-04-02 20:44:03       15 阅读