您的位置:首页 > 编程语言 > C语言/C++

快速排序 qsort

2014-10-27 14:38 176 查看
void quicksort(int *arr,int ileft,int iright)
{
if(ileft<iright)
{
int ipivot = arr[ileft];
int i = ileft;
int j = iright;
while(i<j)
{
while(i<j && arr[j]>ipivot)
{
j--;
}
arr[i] = arr[j];
while(i<j && arr[i]<ipivot)
{
i++;
}
arr[j] = arr[i];
}
arr[i] = ipivot;
quicksort(arr,ileft,i-1);
quicksort(arr,i+1,iright);
}
}

void main()
{
int arr[] = {2,323,1,5,78,34,50};//没有优化重复值
quicksort(arr,0,6);
for (int i=0;i<7;++i)
{
printf("%d\n",arr[i]);
}
getchar();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++