博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetcode 215 第K个最大的元素
阅读量:6268 次
发布时间:2019-06-22

本文共 948 字,大约阅读时间需要 3 分钟。

此问题可转化为Top K问题进行考虑,当用小顶堆选出K个最大值时,堆顶的元素即为第k大的元素

class Solution {public:    int findKthLargest(vector
& nums, int k) { priority_queue
,greater
>q;//小顶堆 //priority_queue
,less
>q;大顶堆 int len=nums.size(); for(int i=0;i

 自己重载比较运算符:

/**建立一个小顶堆,每次出现新元素大于堆顶元素则替换堆顶元素**/class Solution {public:    int findKthLargest(vector
& nums, int k) { vector
topk; struct cmp{ bool operator()(int a,int b){
return a>b;}//小顶堆 }; priority_queue
,cmp> q; for(int num:nums){ if(q.size()
q.top()){ q.pop();q.push(num); } } return q.top(); }};

 

转载于:https://www.cnblogs.com/joelwang/p/10640651.html

你可能感兴趣的文章
fmt标签如何计算两个日期之间相隔的天数
查看>>
Spark核心技术原理透视一(Spark运行原理)
查看>>
《Gradle权威指南》--Gradle任务
查看>>
IntelliJ IDEA创建文件时自动填入作者时间 定制格式
查看>>
Android app启动activity并调用onCreate()方法时都默默地干了什么?
查看>>
远程监视jboss应用java内存的配置
查看>>
前端如何接收 websocket 发送过来的实时数据
查看>>
JavaWeb下载文件response
查看>>
Laravel的三种安装方法总结
查看>>
SpringMVC加载配置Properties文件的几种方式
查看>>
C#设计模式总结 C#设计模式(22)——访问者模式(Vistor Pattern) C#设计模式总结 .NET Core launch.json 简介 利用Bootstrap Paginat...
查看>>
java 项目相关 学习笔记
查看>>
numpy opencv matlab eigen SVD结果对比
查看>>
WPF获取某控件的位置,也就是偏移量
查看>>
Boost C++ 库 中文教程(全)
查看>>
solr查询优化(实践了一下效果比较明显)
查看>>
jdk目录详解及其使用方法
查看>>
说说自己对RESTful API的理解s
查看>>
通过layout实现可拖拽自动排序的UICollectionView
查看>>
服务器错误码
查看>>