// sort.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
void sort(int numArr[],int n)
{
for(int i =0;i<n-1;i++)
{
for(int j = 0;j<n-1-i;j++)
{
if(numArr[j] >numArr[j+1])
{
int temp = 0;
temp = numArr[j+1];
numArr[j+1] = numArr[j];
numArr[j] = temp;
}
}
}
}
// 二分法
void swap(int &a,int &b)
{
int temp =0;
temp = a;
a = b;
b = temp;
}
void quickSort(int *numArr,int left,int right)
{
if(left < right) // 不可少
{
int point = numArr[left];
int low = left,upper = right+1; //right +1 防止漏掉最后一个
while(1)
{
while(numArr[++low]<point); //需将++ --运算符在前面
while(numArr[--upper]>point);
if(low>upper)
{
break;
}
swap(numArr[low],numArr[upper]);
}
numArr[left] = numArr[upper];
numArr[upper] = point;
quickSort(numArr,left,upper-1);
quickSort(numArr,upper+1,right);
}
}
void print(int numArr[],int n)
{
for(int i =0;i<n;i++)
printf("%d\n",numArr[i]);
}
int main(int argc, char* argv[])
{
int numArr[]={1,8,5,4,7,9,23,3};
int number = sizeof(numArr)/sizeof(int);
// sort(numArr,sizeof(numArr)/sizeof(int));
quickSort(numArr,0,sizeof(numArr)/sizeof(int)-1);
print(numArr,sizeof(numArr)/sizeof(int));
// sort(numArr);
printf("Hello World!\n");
return 0;
}