#include<stdio.h>
void quicksort(int *array,int left,int right)
{
if(left<right)
{
int temp=array[left];
int low=left;
int high=right;
while(low<high)
{
while(low<high&&array[high]>temp)
{
high--;
}
array[low]=array[high];
while(low<high&&array[low]<temp)
{
low++;
}
array[high]=array[low];
}
array[low]=temp;
quicksort(array,left,low-1);
quicksort(array,low+1,right);
}
}
int main()
{
int array[10]={0,2,1,4,3,5,8,7,6,9};
int i,left=0,right=9;
printf("The before Order:\n");
for(i=0;i<10;i++)
printf("%d ",array[i]);
printf("\n");
quicksort(array,left,right);
printf("The after Order:\n");
for(i=0;i<10;i++)
printf("%d ",array[i]);
return 0;
}
运行结果图:
转载请注明作者:小刘