Day125 | 灵神 | 二叉树 | 二叉树中的第K大层和

Day125 | 灵神 | 二叉树 | 二叉树中的第K大层和

2583.二叉树中的第K大层和

2583. 二叉树中的第 K 大层和 - 力扣(LeetCode)

思路:

把每层的结果都放到一个vector数组里面,然后排序这个vector数组,返回第K大的元素即可

完整代码:

cpp 复制代码
class Solution {
public:
    long long kthLargestLevelSum(TreeNode* root, int k) {
        vector<long long> res;
        queue<TreeNode *> q;
        if(root==nullptr)
            return 0;
        q.push(root);
        while(!q.empty())
        {
            int size=q.size();
            long long path=0;
            for(int i=0;i<size;i++)
            {
                TreeNode *t=q.front();
                q.pop();
                path+=t->val;
                if(t->left)
                    q.push(t->left);
                if(t->right)
                    q.push(t->right);
            }
            res.push_back(path);
        }
        sort(res.begin(),res.end());
        if(res.size()>=k)
            return res[res.size()-k];
        return -1;
    }
};
相关推荐
旖旎夜光1 小时前
C++(17)
c++·学习
Larry_Yanan2 小时前
Qt多进程(三)QLocalSocket
开发语言·c++·qt·ui
superman超哥2 小时前
仓颉语言中元组的使用:深度剖析与工程实践
c语言·开发语言·c++·python·仓颉
专注于大数据技术栈2 小时前
java学习--StringBuilder
java·学习
LYFlied3 小时前
【每日算法】LeetCode 153. 寻找旋转排序数组中的最小值
数据结构·算法·leetcode·面试·职场和发展
唐装鼠3 小时前
rust自动调用Deref(deepseek)
开发语言·算法·rust
Lucas555555553 小时前
现代C++四十不惑:AI时代系统软件的基石与新征程
开发语言·c++·人工智能
qcwl663 小时前
操作系统 真象还原 学习笔记#13
笔记·学习
车载测试工程师3 小时前
CAPL学习-CAN相关函数-概述
网络协议·学习·capl·canoe
roman_日积跬步-终至千里3 小时前
【人工智能导论】08-学习-如何让计算机理解序列数据——用RNN/LSTM建模时序依赖,用文本嵌入表示序列元素
人工智能·rnn·学习