(最小K个数)设计一个算法,找出数组中最小的k个数。以任意顺序返回这k个数均可。

设计一个算法,找出数组中最小的k个数。以任意顺序返回这k个数均可。
示例:
输入: arr = [1,3,5,7,2,4,6,8], k = 4
输出: [1,2,3,4]
【(最小K个数)设计一个算法,找出数组中最小的k个数。以任意顺序返回这k个数均可。】提示:
0 <= len(arr) <= 100000
0 <= k <= min(100000, len(arr))

class Solution { public int[] smallestK(int[] arr, int k) { //如果arr数组为空或者K<=0,则返回[] if(arr==null||k<=0){ return new int[0]; }PriorityQueue p=new PriorityQueue<>(arr.length); //1.将arr中的数据放到优先级队列中 for(int i=0; i

    推荐阅读