快排

sort的原函数

在两个变量绑定时,无法直接用sort

直接贴代码,没什么好描述的

#include"stdio.h"
void quiksort(int a[],int low,int high)
{

int i = low;

int j = high;
int temp = a[i];

if( low < high)
{
while(i < j)
{
while((a[j] >= temp) && (i < j))//这里其实是过滤
{
j--;
}
a[i] = a[j];
while((a[i] <= temp) && (i < j))
{
i++;
}
a[j]= a[i];
}
a[i] = temp;
quiksort(a,low,i-1);
quiksort(a,j+1,high);
}
else
{
return;
}
}

 

int main()

{

int arry[5] = {23,1,21,4,19};

quiksort(arry,0,4);

for(int i=0;i<5;i++)

{

printf("%d ",arry[i]);

}

printf("\n");
return 0;
}

 

posted @ 2015-01-09 09:18  zach96  阅读(157)  评论(0编辑  收藏  举报