Leetcode 107:二叉树的层次遍历II

给你二叉树的根节点 root ,返回其节点值 自底向上的层序遍历 。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历)。

思路:翻转title102的结果即可。

java 复制代码
//层次遍历二叉树
    public static List<List<Integer>> levelOrder(TreeNode root) {
        List<List<Integer>> result=new ArrayList();
        //借助队列
        Queue<TreeNode> queue=new LinkedList();
        if(root!=null){
            queue.add(root);
        }

        while (!queue.isEmpty()){
            int size=queue.size();   //记录每层个数
            List<Integer> list=new ArrayList();

            for(int i=0;i<size;i++){
                TreeNode node=queue.poll();
                list.add(node.val);
                if(node.left!=null){
                    queue.add(node.left);
                }
                if(node.right!=null){
                    queue.add(node.right);
                }
            }
            result.add(list);
        }

        //翻转二维列表
        List<List<Integer>> res=new ArrayList();
        for(int i=result.size()-1;i>=0;i--){
            res.add(result.get(i));
        }
        return res;
    }
相关推荐
J_liaty12 小时前
Java设计模式全解析:23种模式的理论与实践指南
java·设计模式
万象.12 小时前
redis集群算法,搭建,故障处理及扩容
redis·算法·哈希算法
plus4s12 小时前
2月19日(85-87题)
c++·算法
Desirediscipline13 小时前
cerr << 是C++中用于输出错误信息的标准用法
java·前端·c++·算法
Demon_Hao13 小时前
JAVA快速对接三方支付通道标准模版
java·开发语言
Renhao-Wan13 小时前
Java 算法实践(八):贪心算法思路
java·算法·贪心算法
w***711013 小时前
常见的 Spring 项目目录结构
java·后端·spring
今儿敲了吗13 小时前
23| 画展
c++·笔记·学习·算法
Jasmine_llq13 小时前
《AT_arc081_d [ARC081F] Flip and Rectangles》
算法·动态规划(dp)·贪心思想扩展 / 收缩边界·预处理转换网格状态·二维数组遍历实现逐点计算
野犬寒鸦13 小时前
深入解析HashMap核心机制(底层数据结构及扩容机制详解剖析)
java·服务器·开发语言·数据库·后端·面试