#include <iostream>
using namespace std;
int a[100000],n;
void qsort(int l, int r) //普通快速排序
{
int i,j,x,tmp;
i = l ;
j = r ;
x = a[ (l+r) / 2 ] ;
do
{
while ( a[i]<x ) ++i;
while ( a[j]>x ) --j;
if (i<=j)
{
tmp = a[i] ;
a[i] = a[j] ;
a[j] = tmp ;
++i;
--j;
}
}while (i<=j);
if (i<r) qsort( i , r ) ;
if (l<j) qsort( l , j ) ;
}
int main()
{
cin >> n;
for (int i=1; i<=n ; i++) cin >> a[i] ;
qsort(1,n);
for (int i=1; i<=n ; i++) cout << a[i] << endl ;
return 0;
}
快速排序代码
最新推荐文章于 2022-10-17 22:44:26 发布