最小的k个数
题目描述:输入整数数组 arr ,找出其中最小的 k 个数。
例如,输入4、5、1、6、2、7、3、8这8个数字,则最小的4个数字是1、2、3、4。
示例:
输入:arr=[1,2,5,6,7,89,9,10],k=3
输出:[1,2,5]或[5,2,1]
思路:将原数组排序,用新数组来存储k小的数。
vector<int> getLeastNumbers(vector<int>& arr, int k) {
vector<int> vec(k, 0);
sort(arr.begin(), arr.end());
for (int i = 0; i < k; ++i) {
vec[i] = arr[i];
}
return vec;
}