LeetCode C++ 102. 二叉树的层序遍历【Tree/BFS】中等
发布日期:2021-07-01 02:57:08 浏览次数:3 分类:技术文章

本文共 790 字,大约阅读时间需要 2 分钟。

给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。

示例:二叉树:[3,9,20,null,null,15,7]

3   / \  9  20    /  \   15   7

返回其层次遍历结果:

[  [3],  [9,20],  [15,7]]

解法 BFS

class Solution {
public: vector
> levelOrder(TreeNode* root) {
if (root == nullptr) return {
}; vector
> ans; queue
q; q.push(root); while (!q.empty()) {
int size = q.size(); ans.push_back(vector
()); for (int i = 0; i < size; ++i) { TreeNode *t = q.front(); q.pop(); ans.back().push_back(t->val); if (t->left) q.push(t->left); if (t->right) q.push(t->right); } } return ans; }};

提交后的执行效率如下:

执行用时:8 ms, 在所有 C++ 提交中击败了46.70% 的用户内存消耗:11.6 MB, 在所有 C++ 提交中击败了37.69% 的用户

转载地址:https://memcpy0.blog.csdn.net/article/details/110153222 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:LeetCode C++ 50. Pow(x, n)【Recursion】中等
下一篇:LeetCode C++ 剑指 Offer 32 - I. 从上到下打印二叉树【Tree/BFS】中等

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2024年04月23日 14时07分06秒