#include<iostream>
using namespace std;
//从小到大排序,即升序
int partion(int a[], int low, int high)
{
int tag=a[low];
while(low<high){
while(low<high&&tag<=a[high])
high--;
if(low<high){
a[low]=a[high];
low++;
}
while(low<high&&a[low]<=tag)
low++;
if(low<high){
a[high]=a[low];
high--;
}
}
a[low]=tag;
return low;
}
void quickSort(int a[], int low, int high)
{
int position = partion(a, low, high); //划分
if(low < high)
{
quickSort(a, low, position - 1);
quickSort(a, position + 1, high);
}
}
int main()
{
int a[] = {4, 5, 1, 3, 2, 0, -3 ,-20, 100, 50};
quickSort(a, 0, 10 - 1);
int i;
for(i = 0; i < 10; i++)
cout << a[i] << " ";
cout << endl;
return 0;
}
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。