[力扣 Hot100]Day41 二叉树的层序遍历

题目描述

给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。
出处

思路

用队列存,每层之间用null隔开。

代码

cpp 复制代码
class Solution {
public:
    vector<vector<int>> levelOrder(TreeNode* root) {
        vector<vector<int>> result;
        vector<int> temp;
        vector<TreeNode*> queue;
        if(!root) return result;
        queue.push_back(root);
        queue.push_back(nullptr);
        int i=0;
        while(i<queue.size()-1) {
            if(!queue[i])
                queue.push_back(nullptr);
            else{
                if(queue[i]->left) queue.push_back(queue[i]->left);
                if(queue[i]->right) queue.push_back(queue[i]->right);
            }
            i++;
        }
        i=0;
        while(i<queue.size()) {
            if(!queue[i]) {
                result.push_back(temp);
                temp.clear();
            }
            else
                temp.push_back(queue[i]->val);
            i++;
        }
        return result;
    }
};
相关推荐
森焱森4 分钟前
无人机三轴稳定化控制(1)____飞机的稳定控制逻辑
c语言·单片机·算法·无人机
循环过三天8 分钟前
3-1 PID算法改进(积分部分)
笔记·stm32·单片机·学习·算法·pid
闪电麦坤9533 分钟前
数据结构:二维数组(2D Arrays)
数据结构·算法
凌肖战1 小时前
力扣网C语言编程题:快慢指针来解决 “寻找重复数”
c语言·算法·leetcode
埃菲尔铁塔_CV算法1 小时前
基于 TOF 图像高频信息恢复 RGB 图像的原理、应用与实现
人工智能·深度学习·数码相机·算法·目标检测·计算机视觉
NAGNIP2 小时前
一文搞懂FlashAttention怎么提升速度的?
人工智能·算法
Codebee2 小时前
OneCode图生代码技术深度解析:从可视化设计到注解驱动实现的全链路架构
css·人工智能·算法
刘大猫262 小时前
Datax安装及基本使用
java·人工智能·算法
Gyoku Mint5 小时前
深度学习×第4卷:Pytorch实战——她第一次用张量去拟合你的轨迹
人工智能·pytorch·python·深度学习·神经网络·算法·聚类