//#include <iostream.h>
//sort1插入排序法
//sort2快速排序法
#include <stdio.h>
void sort1(int a[],int len);
void sort2(int a[], int ,int);
void p(int a[],int len);
void main()
{
int a[] = {55,2,6,32,12,9,73,1,26,37,1};
int len;
len = sizeof(a)/sizeof(int);
p(a,len);
sort2(a,0,len-1);
p(a,len);
}
void sort1(int a[], int len)
{
for(int i=1; i<len; i++)
{
int insert = a[i];
int j = i;
while(j>0 && a[j-1] > insert)
{
a[j] = a[j-1];
j--;
}
a[j]=insert;
p(a,len);
}
}
void sort2(int a[], int left, int right)
{
int p,l,r,tmp;
l = left;
r = right;
p = a[(l+r)/2];
while(l<r)
{
while(a[l]<p) l++;
while(a[r]>p) r--;
if(l>=r) break;
tmp = a[l];
a[l] = a[r];
a[r] = tmp;
l++;
r--;
}
if(l==r) l++;
if(left<r) sort2(a,left,r);
if(right>l) sort2(a,l,right);
}
void p(int a[], int len)
{
for(int i=0; i<len; i++)
{
printf("%i,", a[i]);
}
printf("/n");
}