hot100-42二叉树的右视图

一、题目

给定二叉树的根节点root,返回从右侧能看到的值。

二、思路

1、层序遍历,每层的最后一个就构成了右视图。

三、代码

java 复制代码
class Solution {
    public List<Integer> rightSideView(TreeNode root) {
        if(root == null) return new ArrayList<>();
        List<Integer> res = new ArrayList<>();
        Queue<TreeNode> queue = new LinkedList<>();
        queue.offer(root);
        while(!queue.isEmpty()){
            int n = queue.size();
            for(int i = 0; i < n;i++){
                TreeNode node = queue.poll();
                if(i == n-1) res.add(node.val);
                if(node.left != null) queue.offer(node.left);
                if(node.right != null) queue.offer(node.right);
            }
        }
        return res;
    }
}
相关推荐
Nil20811 小时前
leetcode 198打家劫舍
算法·leetcode·职场和发展
Shaoshing11 小时前
前缀和与差分
java·数据结构·算法·前缀和·差分
loulanyue_12 小时前
构建房产认知决策智能:Harness底座与AI自进化的技术实践——读贝壳首席算法科学家尹俊希2026云栖专场演讲
人工智能·算法
碧海银沙音频科技研究院12 小时前
基于炬芯ATS录音卡BLE控制协议
人工智能·嵌入式硬件·算法·语音识别
suhan13 小时前
【数据结构】三、栈和队列:6.链队列、双端队列、队列的应用(树的层次遍历、广度优先BFS、先来先服务FCFS)
数据结构·后端·算法
姜鱼问生13 小时前
Docker Volume 备份与恢复实战:不停机迁移数据
后端·算法·架构
suhan13 小时前
【数据结构】三、栈和队列:5.顺序队列(循环队列)(初始化,判空判满,入队,出队,实例)
数据结构·后端·算法
suhan13 小时前
【数据结构】三、栈和队列:3.链栈(链栈栈的初始化,判空,进栈,出栈,读取栈顶,链栈实例)
数据结构·后端·算法
大雄很用心13 小时前
如何理解时间复杂度与空间复杂度?| 面试刷题笔记02
算法
姜鱼问生13 小时前
服务器磁盘满了?从告警到清理的完整排查
后端·算法·架构