码迷,mamicode.com
首页 > 编程语言 > 详细

215. 数组中的第K个最大元素(c++)

时间:2020-04-10 17:16:10      阅读:90      评论:0      收藏:0      [点我收藏+]

标签:输入   ret   div   amp   ndk   最大   不同   不同的   c++   

在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。

示例 1:

输入: [3,2,1,5,6,4] 和 k = 2
输出: 5

    int findKthLargest(vector<int>& nums, int k) {
        std::priority_queue<int,std::vector<int>,std::greater<int>> Q;
        for(int i= 0;i<nums.size();i++){
            if(Q.size() < k) Q.push(nums[i]);
            else if(nums[i] > Q.top()){
                Q.pop();
                Q.push(nums[i]);
            }
        }
        return Q.top();
    }

215. 数组中的第K个最大元素(c++)

标签:输入   ret   div   amp   ndk   最大   不同   不同的   c++   

原文地址:https://www.cnblogs.com/one-think/p/12674599.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!