(leetcode)力扣100 41二叉树的层序遍历(bfs)

题目

给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。

数据范围

树中节点数目在范围 [0, 2000] 内

-1000 <= Node.val <= 1000

测试用例

示例1

java 复制代码
输入:root = [3,9,20,null,null,15,7]
输出:[[3],[9,20],[15,7]]

示例2

java 复制代码
输入:root = [1]
输出:[[1]]

示例3

java 复制代码
输入:root = []
输出:[]

题解

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) {
        List<List<Integer>> res=new ArrayList<>();
        if(root==null){
            return res;
        }

        
        Queue<TreeNode> queue=new LinkedList<>();
        queue.add(root);
        while(!queue.isEmpty()){
            int num=queue.size();
            List<Integer> list=new ArrayList<>();
            while(num--!=0){
                TreeNode temp=queue.poll();
                list.add(temp.val);
                if(temp.left!=null)
                    queue.add(temp.left);

                if(temp.right!=null)
                    queue.add(temp.right);
                
            }

            res.add(list);
        }
        return res;
    }
}

思路

太简单了代码备注不想给,思路也不想写 = =

相关推荐
Y3ai1 天前
Windows 11 Docker Desktop 保姆级安装使用教程
windows·docker·容器
py有趣1 天前
力扣热门100题之环形链表
算法·leetcode·链表
py有趣1 天前
力扣热门100题之回文链表
算法·leetcode·链表
春日见1 天前
Tool文件夹:瑞士军刀库
运维·服务器·windows·深度学习·自动驾驶
ward RINL1 天前
Redis 安装及配置教程(Windows)【安装】
数据库·windows·redis
样例过了就是过了1 天前
LeetCode热题100 柱状图中最大的矩形
数据结构·c++·算法·leetcode
wsoz1 天前
Leetcode哈希-day1
算法·leetcode·哈希算法
阿Y加油吧1 天前
LeetCode 二叉搜索树双神题通关!有序数组转平衡 BST + 验证 BST,小白递归一把梭
java·算法·leetcode
liuyao_xianhui1 天前
优选算法_最小基因变化_bfs_C++
java·开发语言·数据结构·c++·算法·哈希算法·宽度优先
Milu_Jingyu1 天前
Windows与Ubuntu文件共享详细指南
linux·windows·ubuntu