【hot100-java】【二叉树的层序遍历】

二叉树

BFS

队列实现

java 复制代码
/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode() {}
 *     TreeNode(int val) { this.val = val; }
 *     TreeNode(int val, TreeNode left, TreeNode right) {
 *         this.val = val;
 *         this.left = left;
 *         this.right = right;
 *     }
 * }
 */
class Solution {
    public List<List<Integer>> levelOrder(TreeNode root) {
        Queue<TreeNode> queue=new LinkedList<>();
        List<List<Integer>>ret=new ArrayList<>();
        if(root!=null) queue.add(root);
        while(!queue.isEmpty()){
            List<Integer>tmp=new ArrayList<>();
            for(int i=queue.size();i>0;i--){
                TreeNode node=queue.poll();
                tmp.add(node.val);
                if(node.left!=null) queue.add(node.left);
                if(node.right!=null) queue.add(node.right);
            }
            ret.add(tmp);
        }
        return ret;
        
        
    }
}
相关推荐
加号32 分钟前
【C#】 WebAPI 接口设计与实现指南
开发语言·c#
foundbug9995 分钟前
基于混合整数规划的电池容量优化 - MATLAB实现
数据结构·算法·matlab
lly2024068 分钟前
jQuery 删除元素详解
开发语言
itzixiao10 分钟前
L1-047 装睡 (5分)[java][python]
java·开发语言·python
m0_6138562913 分钟前
Golang怎么实现测试跳过条件_Golang如何根据环境或条件跳过不适用的测试用例【操作】
jvm·数据库·python
csdn2015_16 分钟前
修改分类信息的时候将分类异步写入redis
数据库·redis·bootstrap
林恒smileZAZ18 分钟前
Three.js实现更真实的3D地球[特殊字符]动态昼夜交替
开发语言·javascript·3d
STAT abil19 分钟前
MySQL 的mysql_secure_installation安全脚本执行过程介绍
数据库·mysql·安全
用户2986985301421 分钟前
不用无头浏览器,Java 如何将 HTML 转成图片?
java·后端
SelectDB31 分钟前
从 T+1 到分钟级:金城银行基于 Apache Doris 构建高可靠、强一致的实时数据平台
大数据·数据库·数据分析