题解 | #最小的K个数#
最小的K个数
https://www.nowcoder.com/practice/6a296eb82cf844ca8539b57c23e6e9bf
class Solution { public: vector<int> GetLeastNumbers_Solution(vector<int>& input, int k) { vector<int> res; if(k == 0 || input.size() == 0) { return res; } priority_queue<int> q; for(int i = 0; i < k; i++) { q.push(input[i]); } for(int i = k; i < input.size(); i++) { if(q.top() > input[i]) { q.pop(); q.push(input[i]); } } for(int i = 0; i < k; i++) { res.push_back(q.top()); q.pop(); } return res; } };