#include<iostream>
#include<vector>
using namespace std;
void QuickSort(vector<int> &a,int low,int high)
{
if(low>high)
return;
int i=low,j=high;
int temp=a[low];
while(i<j)
{
while(i<j && a[j]>=temp)
j--;
if(i<j)
{
a[i]=a[j];
i++;
}
while(i<j &&a[i]<=temp)
i++;
if(i<j)
{
a[j]=a[i];
j--;
}
}
a[i]=temp;
QuickSort(a,low,i-1);
QuickSort(a,i+1,high);
}
void main()
{
int a[]={3,5,0,6,10,4,1,7,2,9};
int N=sizeof(a)/sizeof(a[0]);
vector<int> v(a,a+10);
QuickSort(v,0,N-1);
int i;
for(i=0;i<N-1;i++)
cout<<v[i]<<" ";
}
快速排序(在数组两边放置两个指针)
猜你喜欢
转载自blog.csdn.net/Henry313/article/details/88887140
今日推荐
周排行