输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,
class Solution {
public:
vector<int> GetLeastNumbers_Solution(vector<int> input, int k) {
vector<int> res;
if(k<0||input.size()<=0||input.size()<k) return res;
priority_queue<int,vector<int>,greater<int>> q; //小顶堆从小到大排序
for(int i=0;i<input.size();i++){
q.push(input[i]); //将数组中数据压入到优先队列中
}
while(k){
res.push_back(q.top()); //队顶弹出数据
q.pop();
k--;
}
return res;
}
};