快速排序(函数)

#include<bits/stdc++.h>
using namespace std;
int quick_sort(int *a,int begin,int end)
{
    if(begin>end)
    {
  	return 0;
    }
    int tmp=a[begin];
    int i=begin;
    int j=end;
    while(i!=j)
    {
  	while(a[j]>=tmp&&j>i)
  	{
   	    j--;
  	}
  	while(a[i]<=tmp&&j>i)
  	{
            i++;
  	}
  	if(j>i)
  	{
   	    int t=a[i];
            a[i]=a[j];
            a[j]=t;
  	}
    }
    a[begin]=a[i];
    a[i]=tmp;
    quick_sort(a,begin,i-1);
    quick_sort(a,i+1,end); 
}
int main()
{
    int a[10]={0,1,2,3,4,9,8,7,6,5};
    quick_sort(a,0,9);
    for(int i=0;i<10;i++)
    {
        cout<<a[i]<<" ";
    }
}
©️2020 CSDN 皮肤主题: 精致技术 设计师:CSDN官方博客 返回首页