/*
题目描述
给定一个数组,找出其中最小的K个数。例如数组元素是4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4。如果K>数组的长度,那么返回一个空的数组
示例1
1输入
[4,5,1,6,2,7,3,8],4
返回值
[1,2,3,4]
*/
class Solution {
public:
vector<int> GetLeastNumbers_Solution(vector<int> input, int k) {
vector<int> output;
set<int> mySet;
if(input.empty() || input.size() < k || k <= 0){
return output;
}
for(int i = 0; i < input.size(); i++){
mySet.insert(input[i]);
}
for(auto it = mySet.begin(); it != mySet.end();it++){
if(output.size() < k){
output.push_back(*it);
}else{
break;
}
}
return output;
}
};