单点时限: 2.0 sec
内存限制: 512 MB
实现一个快速排序算法并输出中间过程。
输出中间过程的伪代码可以写成
void quicksort(vector <int> &v,int p,int r)
{
if (p<r)
{
int q=partition(v,p,r);
for (int i=0;i<v.size();i++)
cout<<v[i]<<' ';
cout<<endl;
quicksort(v,p,q-1);
quicksort(v,q+1,r);
}
}
所以你只需要实现partition
函数和数据读写就可以了!
一个行一个整数$n$,接下来一行$n$个数。
排序的中间过程,每行$n$个数,总共若干行。
6 4 2 1 3 5 6
4 2 1 3 5 6 4 2 1 3 5 6 2 1 3 4 5 6 1 2 3 4 5 6 1 2 3 4 5 6
请严格按照PPT上的算法描述完成!!!(PPT第61页)
在程序最后请输出一遍排好序的数组!!!