输入n个整数,输出其中最小的k个。 ---冒泡

来源:互联网 发布:淘宝直通车怎么操作 编辑:程序博客网 时间:2024/06/05 21:50

/*输入n个整数,输出其中最小的k个。 详细描述:接口说明原型:bool GetMinK(unsignedint uiInputNum, int *pInputArray, unsignedint uiK, int * pOutputArray);*/void main(){   unsigned int n,m;   int inputArray[MAX]={0},outputArray[MAX]={0};while(1){cout<<"输入数据个数:n= ";cin>>n;for(int i=0;i<n;i++){cin>>inputArray[i];}cout<<"输出数据个数:n= ";cin>>m;       getMin_K(n,inputArray,m,outputArray);   for(int i=0;i<m;i++){    cout<<outputArray[i]<<" ";   }  cout<<endl;}}bool getMin_K(unsigned int inputnum,int* inputArray,unsigned int output_k,int* outputArray){//冒泡算法排序int i,j,temp;for(i=1;i<inputnum;i++){for(j=inputnum-1;j>=i;j--){if(inputArray[j]<inputArray[j-1]){   temp=inputArray[j];   inputArray[j]=inputArray[j-1];   inputArray[j-1]=temp;}}}//提取k个最小数据for(i=0;i<output_k;i++){  outputArray[i]=inputArray[i];}return true;}


0 0