zoukankan      html  css  js  c++  java
  • 【每日一题-leetcode】429.N叉数的层序遍历

    429.N叉数的层序遍历

    1. N叉树的层序遍历

    难度中等76

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

    例如,给定一个 3叉树 :

    返回其层序遍历:

    [
         [1],
         [3,2,4],
         [5,6]
    ]
    

    1.队列实现广度优先搜索

    time:O(n)

    space:O(n)

    //1.用队列实现广度优先搜索
        //2.一个list 一个queue  list存储节点的值  queue存储每一层遍历的节点。
        //3.当queue != null 的时候,遍历当前层。
        public List<List<Integer>> levelOrder(Node root) {
            if(root == null) return new ArrayList();
            List<List<Integer>> list = new ArrayList<>();
            Queue<Node> queue = new LinkedList();//存储每一层的结点值
            queue.add(root);
            while(!queue.isEmpty()){
                List<Integer> level = new ArrayList<>();
                int size = queue.size();
                for(int i=0;i<size;i++){
                    Node node = queue.poll();
                    level.add(node.val);
                    queue.addAll(node.children);
                }
                list.add(level);
            }
            return list;
        }
    
  • 相关阅读:
    ureport2 数据源配置
    ureport2 + spring boot 搭建
    alibaba
    Maven Helper
    在Idea中连接数据库并生成实体类
    Intellij jrebel 热部署 安装
    IDEA使用说明
    JPA 常用注解 (hibernate)
    vue + canvas 图片加水印
    vue——批量下载图片
  • 原文地址:https://www.cnblogs.com/qxlxi/p/12860641.html
Copyright © 2011-2022 走看看