数据结构 用Turbo C 编程,输入任意10个数,用快速排序法,按降序后输出。

来源:百度知道 编辑:UC知道 时间:2024/06/05 01:29:47
用Turbo C 编程,输入任意10个数,用快速排序法,按降序后输出。

void swap(int& a, int& b)
{
int c = a;
a = b;
b = c;
}
int partion(int a[], int p, int r)
{
int i = p-1;
int x = a[r];
int j ;
for (j = p; j <= r-1; ++j)
{
if (a[j] <= x)
{
++i;
swap(a[i], a[j]);
}
}
swap(a[i+1], a[r]);
return i + 1;
}

void quicksort(int a[], int p, int r)
{
if (p < r)
{
int q = partion(a, p, r);
quicksort(a,p, q-1);
quicksort(a,q+1, r);
}

}
int main()
{
int a[10] = {7,6,5,1,3,2,4,9,0};

quicksort(a, 0, 9);

for (int i = 0; i < 10; ++i)
{
printf( "%d\n",a[i] );
}

return 0;