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;
    }
};
相关推荐
Felven5 分钟前
C. Contrast Value
c语言·开发语言·算法
natide7 分钟前
表示/嵌入差异-1-欧几里得距离(Euclidean Distance)-L2 距离(L2 distance)-欧式距离的标准化
人工智能·pytorch·python·深度学习·算法·自然语言处理
雪花desu8 分钟前
【Hot100-Java简单】:两数之和 (Two Sum) —— 从暴力枚举到哈希表的思维跃迁
java·数据结构·算法·leetcode·哈希表
qzhqbb9 分钟前
群智能计算核心算法全解析
人工智能·算法
leaves falling10 分钟前
c语言打印闰年
java·c语言·算法
YGGP10 分钟前
【Golang】LeetCode 121. 买卖股票的最佳时机
算法·leetcode
mmz120723 分钟前
差分数组(二维)(c++)
c++·算法
2401_8414956424 分钟前
【游戏开发】登山赛车
数据结构·python·游戏·游戏开发·pygame·登山赛车游戏·游戏打包发布
YGGP27 分钟前
【Golang】LeetCode 45. 跳跃游戏 II
算法·leetcode·游戏
闻缺陷则喜何志丹30 分钟前
【计算几何 化环为链】P14165 [ICPC 2022 Nanjing R] 清空水箱|普及+
c++·数学·算法·计算几何·洛谷·化环为链