Link: 输入n个整数,输出其中最小的k个_牛客题霸_牛客网 (nowcoder.com)
function1: 整体排序输出前k个
function2:用快排的思路找
这里偷懒用到了桶排序去做:
#include<iostream>
#include<algorithm>
using namespace std;
const int maxn=1e4+10;
int t[maxn]{0};
int main(){
int n,k;
cin>>n>>k;
int x;
for(int i=0;i<n;i++){
cin>>x;
t[x]++;
}
for(int i=0;i<maxn;i++){
while(k&&t[i]){
cout<<i<<' ';
k--;
t[i]--;
}
}
}