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;
    }
相关推荐
清酒难咽1 小时前
算法案例之递归
c++·经验分享·算法
张柏慈1 小时前
Java性能优化:实战技巧与案例解析
java
天“码”行空1 小时前
简化Lambda——方法引用
java·开发语言
让我上个超影吧1 小时前
【力扣26&80】删除有序数组中的重复项
算法·leetcode
带刺的坐椅2 小时前
MCP 进化:让静态 Tool 进化为具备“上下文感知”的远程 Skills
java·ai·llm·agent·solon·mcp·tool-call·skills
java1234_小锋2 小时前
Java线程之间是如何通信的?
java·开发语言
张张努力变强2 小时前
C++ Date日期类的设计与实现全解析
java·开发语言·c++·算法
沉默-_-2 小时前
力扣hot100滑动窗口(C++)
数据结构·c++·学习·算法·滑动窗口
钱彬 (Qian Bin)2 小时前
项目实践19—全球证件智能识别系统(优化检索算法:从MobileNet转EfficientNet)
算法·全球证件识别
feifeigo1232 小时前
基于EM算法的混合Copula MATLAB实现
开发语言·算法·matlab