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;
    }
相关推荐
鱼子星_8 分钟前
【C++】深入剖析list:list及其双向迭代器实现
开发语言·数据结构·c++·笔记·stl·list
脚踏实地皮皮晨10 分钟前
003002004_WPF Panel 基类 官方类定义
开发语言·windows·算法·c#·wpf·visual studio
jun_bai12 分钟前
使用java安全的移动文件
java
caishenzhibiao15 分钟前
市场同步系统 同花顺期货通指标
java·c语言·c#
Devin~Y17 分钟前
从本地生活电商到 AI RAG:互联网大厂 Java 面试场景完整实战
java·spring boot·redis·elasticsearch·spring cloud·kafka·rag
520拼好饭被践踏21 分钟前
JAVA+Agent学习day25
java·开发语言·学习
大黄说说22 分钟前
Java 并发大坑:volatile、synchronized、Lock 三者如何选择?
java·开发语言
IMPYLH1 小时前
HTML 的 <em> 元素
java·前端·html
啊真真真1 小时前
ArgoCD:我的GitOps探索之旅与未来展望
java·算法·argocd
深入云栈1 小时前
从零手写连接池:Redisson ConnectionsHolder设计与简化实现
java·架构