Leetcode 429:N叉树的层次遍历

给定一个 N 叉树,返回其节点值的层序遍历。(即从左到右,逐层遍历)。

树的序列化输入是用层序遍历,每组子节点都由 null 值分隔(参见示例)。

思路:利用层次遍历的模板,直接遍历N叉树

java 复制代码
public List<List<Integer>> levelOrder(Node root) {
        List<List<Integer>> result=new ArrayList<>();
        Queue<Node> 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++){
                Node node=queue.poll();
                list.add(node.val);
                if(node.children==null) continue;
                for(int j=0;j<node.children.size();j++){
                    queue.add(node.children.get(j));
                }
            }
            result.add(list);
        }
        return result;
    }
相关推荐
Java内核笔记几秒前
Spring Boot 4 拥抱 Jackson 3:包名迁移、配置改名与自动配置源码剖析
java·后端
kaixin_啊啊12 分钟前
test_机器学习算法学习
学习·算法·机器学习
liulilittle13 分钟前
MOE路由:路由(logits: top-k/8)
c++·人工智能·算法·机器学习·llm
旖旎夜光15 分钟前
LeetCode 11:盛最多水的容器(双指针问题) —— 题解
数据结构·c++·算法·leetcode·双指针
一只齐刘海的猫27 分钟前
【Leetcode】乘积最大子数组
算法·leetcode·职场和发展
程序员黑豆1 小时前
什么是JDK以及JDK都由哪些部分组成呢
java·前端·ai编程
估值探索者1 小时前
【Python实时盯盘与预警 #08】成交额突然放大2倍?Python窗口比较抓异动
java·开发语言·python
凤山老林1 小时前
Spring Boot 定时任务进阶:动态 Cron 与集群防重实战
java·spring boot·后端·定时任务·集群定时任务
余生皆假期-2 小时前
傅里叶变换和拉普拉斯变换
人工智能·算法·机器学习
xbgRS2 小时前
spring整合mybaits
java·spring·mybatis