2024.2.23力扣每日一题——二叉树中的第 K 大层和

2024.2.23

题目来源

力扣每日一题;题序:2583

我的题解

方法一 层序遍历+排序

先使用层序遍历计算每一层的和,然后将每一层的和进行排序。
时间复杂度 :O(nlogn)。其中 n 是树中的节点数。广度优先搜索消耗 O(n),一次排序消耗 O(n×log⁡n)。
空间复杂度:O(n)

java 复制代码
public long kthLargestLevelSum(TreeNode root, int k) {
    Queue<TreeNode> queue=new LinkedList<>();
    queue.offer(root);
    List<Long> sum=new ArrayList<>();
    while(!queue.isEmpty()){
        int sz=queue.size();
        long cur_sum=0;
        for(int i=0;i<sz;i++){
            TreeNode t=queue.poll();
            cur_sum+=t.val;
            if(t.left!=null){
                queue.offer(t.left);
            }
            if(t.right!=null)
                queue.offer(t.right);
        }
        sum.add(cur_sum);
    }
    if(sum.size()<k)
        return -1;
    sum.sort((a,b)->b.compareTo(a));
    return sum.get(k-1);
}

有任何问题,欢迎评论区交流,欢迎评论区提供其它解题思路(代码),也可以点个赞支持一下作者哈😄~

相关推荐
爱吃香菜的初学者12 分钟前
八.数据结构——哈希表(1)
数据结构·散列表
ZhengEnCi14 分钟前
2026年10月30日AI早报:Gemini 4 Carbon登顶、DeepSeek融资1055亿、智元机器人上岗实测
人工智能·算法
强哥聊算力26 分钟前
《算力江湖·Intel帝国往事》第三集:安迪·格鲁夫的铁血时代:Intel为什么能把对手逼到墙角?
运维·人工智能·科技·算法·ai·gpu算力
香蕉大香蕉(06敬畏市场)42 分钟前
高频八股 · JVM(8)
java·jvm·面试·八股·大厂实习
Shaoshing1 小时前
LeetCode100 11. 盛最多水的容器
算法·leetcode
养军博客1 小时前
spirngSecurity 鉴权教程02
java·springsecurity
CoderYanger1 小时前
Java EE 进阶:5. Spring IoC&DI(第二弹):Spring IoC
java·开发语言·spring boot·spring·面试·职场和发展·java-ee
骑着蜗牛撵大象3271 小时前
558 万美元训出 671B 模型:DeepSeek-V3 算法与系统的协同拆解
分布式·算法·moe·deepseek-v3·mla·fp8训练
Eyfcom1 小时前
〖阶段性回顾〗物流系统架构与算法的 Day 1-5 知识图谱与实战答疑
算法·系统架构·知识图谱·物流管理系统·快递管理系统
xunberg1 小时前
【Agent 生产化手记-02】Agent 怎么向人提问
人工智能·算法·架构