C++ | Leetcode C++题解之第429题N叉树的层序遍历

题目:

题解:

cpp 复制代码
class Solution {
public:
    vector<vector<int>> levelOrder(Node* root) {
        if (!root) {
            return {};
        }

        vector<vector<int>> ans;
        queue<Node*> q;
        q.push(root);

        while (!q.empty()) {
            int cnt = q.size();
            vector<int> level;
            for (int i = 0; i < cnt; ++i) {
                Node* cur = q.front();
                q.pop();
                level.push_back(cur->val);
                for (Node* child: cur->children) {
                    q.push(child);
                }
            }
            ans.push_back(move(level));
        }

        return ans;
    }
};
相关推荐
朝朝辞暮i9 小时前
C++ 第 23 课:class —— 开始真正进入面向对象
开发语言·c++·算法
郑同学的笔记10 小时前
【c++随笔28】strcmp 和 memcmp对比
开发语言·c++
随意起个昵称10 小时前
【背包dp】输出方案路径
c++·动态规划
朝朝辞暮i11 小时前
C++ 第 27 课:智能指针 shared_ptr
开发语言·c++·算法
by2099911 小时前
学会使用std::string类,并理解其内部是如何管理字符串的详细阐述(上)
c++·笔记·字符串·类和对象·string
沙漠之主11 小时前
C++编程教学设计资料:从入门到实战的完整课程方案
java·前端·c++
朝朝辞暮i11 小时前
C++ 第 29 课:回调函数 Callback
开发语言·c++·算法
kaixin_learn_qt_ing12 小时前
C++多态实现原理
c++
无名猿12 小时前
unique_ptr 完全指南:独占所有权与零开销
c++·性能优化·内存管理·标准库·现代c++
笑鸿的学习笔记12 小时前
C++笔记之大块顺序写
java·c++·笔记