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

快速排序C++代码实现

2014-06-10 17:14 447 查看
//交换位于i和j处的值
void exchange(int *a,int i,int j)
{
int temp = a[i];
a[i] = a[j];
a[j] = temp;
}
int part(int *a,int low,int high)
{
int temp = a[high];
int i = low;
for (int j = low;j<high;++j)
{
if (a[j]<temp)
{
exchange(a,i,j);
++i;
}
}
exchange(a,i,high);
return i;
}
void quicksort(int *a,int low,int high)
{
if (low<high)
{
int mid = part(a,low,high);
quicksort(a,low,mid-1);
quicksort(a,mid+1,high);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: