2024.2.17力扣每日一题——N叉树的层序遍历

2024.2.17

      • 题目来源
      • 我的题解
        • [方法一 广度优先搜索(队列实现)](#方法一 广度优先搜索(队列实现))

题目来源

力扣每日一题;题序:429

我的题解

方法一 广度优先搜索(队列实现)

和二叉树的层序遍历相同,只是在添加子节点的细节有所不同
时间复杂度 :O(n)
空间复杂度:O(n)

java 复制代码
public List<List<Integer>> levelOrder(Node root) {
    List<List<Integer>> res=new ArrayList<>();
    if(root==null)
        return res;
    Queue<Node> queue=new LinkedList<>();
    queue.offer(root);
    while(!queue.isEmpty()){
        int sz=queue.size();
        List<Integer> list=new ArrayList<>();
        for(int i=0;i<sz;i++){
            Node t=queue.poll();
            list.add(t.val);
            //加入子节点的细节
            for(Node node:t.children){
                queue.offer(node);
            }
        }
        res.add(list);
    }
    return res;
}

有任何问题,欢迎评论区交流,欢迎评论区提供其它解题思路(代码),也可以点个赞支持一下作者哈😄~

相关推荐
码农颜15 分钟前
5.4.1 锁分类
java·数据库·mysql
天才测试猿37 分钟前
软件测试知识总结(基础篇)
自动化测试·软件测试·python·功能测试·测试工具·职场和发展·测试用例
wabs66642 分钟前
关于图论【最短路径之Dijkstra算法(堆优化版)|卡码网47.参加科学大会的思考】
数据结构·算法·图论·优先级队列·邻接表·小顶堆·卡码网
坚持编程的菜鸟1 小时前
编写判断大小端程序
c语言·算法·判断大小端
papaofdoudou1 小时前
判断排列逆序奇偶性的乘积判别法(范德蒙德符号法)
人工智能·算法
linux-hzh1 小时前
百日算法修炼 · Day 03
java·算法
不负岁月无痕2 小时前
简单理解操作系统结构
java·linux·c语言·开发语言·c++·面试
mister_guo2 小时前
Java线程池参数应该如何设置(ThreadPoolExecutor)
java
余额瞒着我当琳2 小时前
C++模板初阶与STL初探
android·java·c++
淡海水3 小时前
15-02-YooAsset面试篇-Unity架构设计与源码
java·unity·面试·c#·游戏引擎·yooasset