N叉树的层序遍历-力扣

本题同样是二叉树的层序遍历的扩展,只不过二叉树每个节点的子节点只有左右节点,而N叉树的子节点是一个数组,层序遍历到一个节点时,需要将这个节点的子节点数组的每个节点都入队。

代码如下:

cpp 复制代码
/*
// Definition for a Node.
class Node {
public:
    int val;
    vector<Node*> children;

    Node() {}

    Node(int _val) {
        val = _val;
    }

    Node(int _val, vector<Node*> _children) {
        val = _val;
        children = _children;
    }
};
*/

class Solution {
public:
    vector<vector<int>> levelOrder(Node* root) {
        vector<vector<int>> result;
        queue<Node*> que;
        if(root != nullptr){
            que.push(root);
        }
        while(!que.empty()){
            int size = que.size();
            vector<int> vec;
            for(int i = 0; i < size; i++){
                Node * cur = que.front();
                que.pop();
                vec.push_back(cur->val);
                for(int j = 0; j < cur->children.size(); j++){
                    if(cur->children[j] != nullptr) {
                        que.push(cur->children[j]);
                    }
                }
            }
            result.push_back(vec);
        }
        return result;
    }
};
相关推荐
山甫aa1 分钟前
哈希表的变化(链表数组强化)----从零开始的数据结构
数据结构·哈希算法·散列表
Mem0rin3 分钟前
[Java/数据结构]树的基本概念、二叉树的创建和遍历
java·开发语言·数据结构
我不是懒洋洋4 分钟前
【经典题目】链表OJ(轮转数组、返回倒数第k个节点、链表的回文结构)
c语言·开发语言·数据结构·算法·链表·visual studio
SteveSenna5 分钟前
aubo i5+pika realsense+ACT训练完整流程
人工智能·学习·算法·机器人
励志的小陈11 分钟前
数据结构--堆(C语言实现)
android·c语言·数据结构
AC赳赳老秦11 分钟前
OpenClaw对接百度指数:关键词热度分析,精准定位博客创作方向
java·python·算法·百度·dubbo·deepseek·openclaw
551只玄猫15 分钟前
Why Financial Data Cannot Be Modeled with “Standard Machine Learning”
算法·机器学习·数学建模·金融·数据科学·英文·金融建模
小雅痞17 分钟前
[Java][Leetcode middle] 274. H 指数
java·算法·leetcode
你撅嘴真丑22 分钟前
a 进制转 b 进制(2~16)
算法
IronMurphy9 小时前
【算法三十九】994. 腐烂的橘子
算法