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;
    }
相关推荐
zc.ovo6 分钟前
线段树优化建图
数据结构·c++·算法·图论
WaWaJie_Ngen7 分钟前
C++实现一笔画游戏
c++·算法·游戏·游戏程序·课程设计
程序员-King.9 分钟前
day140—前后指针—删除排序链表中的重复元素Ⅱ(LeetCode-82)
数据结构·算法·leetcode·链表
小尧嵌入式10 分钟前
【Linux开发一】类间相互使用|继承类和构造写法|虚函数实现多态|五子棋游戏|整数相除混合小数|括号使用|最长问题
开发语言·c++·算法·游戏
黎雁·泠崖10 分钟前
Java数组进阶:内存图解+二维数组全解析(底层原理+Java&C差异对比)
java·c语言·开发语言
Remember_99310 分钟前
【JavaSE】一站式掌握Java面向对象编程:从类与对象到继承、多态、抽象与接口
java·开发语言·数据结构·ide·git·leetcode·eclipse
皮蛋sol周11 分钟前
嵌入式学习数据结构(二)双向链表 内核链表
linux·数据结构·学习·嵌入式·arm·双向链表
小园子的小菜14 分钟前
Spring事务失效9大场景(Java面试高频)
java·spring·面试
BHXDML16 分钟前
第三章:聚类算法
算法·机器学习·聚类
向前V21 分钟前
Flutter for OpenHarmony数独游戏App实战:胜利弹窗
java·flutter·游戏