45、二叉树-二叉树的右视图

思路

层序遍历 从左向右遍历每一层取最后一个数,代码如下:

java 复制代码
public List<Integer> rightSideView(TreeNode root) {
        if (root==null){
            return new ArrayList<>();
        }
        Queue<TreeNode> queue = new LinkedList<>();
        List<Integer> list = new ArrayList<>();
        TreeNode cur=root;
        queue.add(cur);
      
        while (!queue.isEmpty()){
            int size = queue.size();
            for (int i = 0; i < size; i++) {
                cur = queue.poll();
                if (i==size-1){
                    list.add(cur.val);
                }
                if (cur.left!=null){
                    queue.add(cur.left);
                }
                if (cur.right!=null){
                    queue.add(cur.right);
                }
            }
        }
        return list;
    }
相关推荐
侠客行031712 小时前
Mybatis连接池实现及池化模式
java·mybatis·源码阅读
蛇皮划水怪12 小时前
深入浅出LangChain4J
java·langchain·llm
老毛肚14 小时前
MyBatis体系结构与工作原理 上篇
java·mybatis
那个村的李富贵14 小时前
CANN加速下的AIGC“即时翻译”:AI语音克隆与实时变声实战
人工智能·算法·aigc·cann
风流倜傥唐伯虎14 小时前
Spring Boot Jar包生产级启停脚本
java·运维·spring boot
power 雀儿14 小时前
Scaled Dot-Product Attention 分数计算 C++
算法
Yvonne爱编码14 小时前
JAVA数据结构 DAY6-栈和队列
java·开发语言·数据结构·python
Re.不晚14 小时前
JAVA进阶之路——无奖问答挑战1
java·开发语言
熬夜有啥好14 小时前
数据结构——哈希表
数据结构·散列表
你这个代码我看不懂14 小时前
@ConditionalOnProperty不直接使用松绑定规则
java·开发语言