题目要求:给出一个数组,要求对其中指定的几个数进行排序
思路:利用冒泡排序对指定的几个数进行排序即可
#include<iostream>
using namespace std;
class LIST
{
int size;
int *arr;
public:
LIST(int a[],int len)
{
size=len;
arr=new int[len];
for(int i=0;i<len;i++)
arr[i]=a[i];
}
void sortpart(int m,int n);
void output()
{
for(int i=0;i<size;i++)
cout<<arr[i]<<'\t';
cout<<endl;
}
~LIST()
{
if(arr)
delete []arr;
}
};
void LIST::sortpart(int m,int n)
{
int i,j,t;
for(i=m-2;i<m+n-1;i++)
for(j=i;j<m+n-2;j++)
if(arr[j]<arr[j+1])
{
t=arr[j];
arr[j]=arr[j+1];
arr[j+1]=t;
}
}
int main()
{
int a[]={1,8,3,10,5,9,7,6,9,8};
LIST tt(a,sizeof(a)/sizeof(a[0]));
cout<<"原数组:\n";
tt.output();
cout<<endl;
tt.sortpart(4,5);
cout<<"现数组:\n";
tt.output();
cout<<endl;
return 0;
}