当前位置:网站首页>JZ40 最小的K个数
JZ40 最小的K个数
2022-08-02 15:35:00 【syc596】
JZ40 最小的K个数
最小的K个数_牛客题霸_牛客网 (nowcoder.com)
NC119 最小的K个数
最小的K个数_牛客题霸_牛客网 (nowcoder.com)
// //Arrays.sort
// import java.util.*;
// public class Solution {
// public ArrayList<Integer> GetLeastNumbers_Solution(int [] array, int k) {
// ArrayList<Integer> ret=new ArrayList<>();
// if(array==null||array.length==0||k==0||k>array.length){
// return ret;
// }
// Arrays.sort(array);
// for(int i=0;i<k;i++){
// ret.add(array[i]);
// }
// return ret;
// }
// }
//堆-优先级队列-最小的k个数-建大堆
//PriorityQueue默认为小堆,建大堆需要调用Collections.reverseOrder()
import java.util.*;
public class Solution {
public ArrayList<Integer> GetLeastNumbers_Solution(int [] array, int k) {
ArrayList<Integer> ret=new ArrayList<>();
if(array==null||array.length==0||k==0||k>array.length){
return ret;
}
PriorityQueue<Integer> pq=new PriorityQueue<>(k,Collections.reverseOrder());
for(int i=0;i<k;i++){
pq.offer(array[i]);
}
for(int i=k;i<array.length;i++){
if(array[i]<pq.peek()){
pq.poll();
pq.offer(array[i]);
}
}
for(int i=0;i<k;i++){
ret.add(pq.poll());
}
return ret;
}
}边栏推荐
猜你喜欢
随机推荐
uniapp 小程序 动态style class
【服务器数据恢复】Raid阵列更换故障硬盘后数据同步失败的数据恢复案例
Break the stereotype, DIY is your own unique mall
已经2022下半年了,居然还在说链动2+1!
MongoDB 《三》复制集集群搭建实例
A tour of gRPC:06 - gRPC client straming 客户端流
面试官:可以谈谈乐观锁和悲观锁吗
Basic management of mysql database in Linux system
“如何写好一篇学术论文?”这大概是最详实的一则攻略了!
“绿色低碳+数字孪生“双轮驱动,解码油气管道站升级难点
20 Lectures on Disassembly of Multi-merchant Mall System Functions-Platform Distribution Overview
【[USACO12MAR]Cows in a Skyscraper G】【状压DP && DFS】
Advanced usage of vim configuration
无线振弦采集仪远程修改参数方式
打破千篇一律,DIY属于自己独一无二的商城
Reed-Solomon Codes——RS纠错码
最强分布式锁工具:Redisson
防抖节流(后续继续更新)
【[SCOI2005] 互不侵犯】【状压DP(含概念讲解)】
我今天终于发现demo才是一切









