//冒泡排序
验证过
void MpSort(int
a[],int len,int
flag)
{
int i,j,t=0;
for(i=0;i<len-1;i++)
for(j=0;j<len-i-1;j++)
{
if(flag==0)
{
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
else
{
if(a[j]<a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
}
//查找排序
验证过
void FindSort(int
a[],int len,int
flag)
{
int i,j,t;
for(i=0;i<len;i++)
for(j=i+1;j<len;j++)
{
if(flag==0)
{
if(a[i]>a[j])
{
t=a[i];
a[i]=a[j];
a[j]=t;
}
}
else
{
if(a[i]<a[j])
{
t=a[i];
a[i]=a[j];
a[j]=t;
}
}
}
}
//快速排序
void QuickSort(int
a[], int
left, int right)
{
int mid,
mid1, l, r,
temp;
l=left;
r=right;
mid1=(left +
right)/2;
mid=a[mid1];
while(l<r)
{
while(a[l] <
mid)
++l;
while(a[r] >
mid)
--r;
if(l>r)
break;
temp =
a[l];
a[l] =
a[r];
a[r] =
temp; |