快排的几个基本要点:
1 找基准值,这里需要说明的是一般选取数组的首地址元素作为基准值 所以在进行函数调用时要去从第二个取起;
2 用基准值把数据分为三块,一块为小于基准值的,另一块为大于基准值的,而中间的那个 部分则作为基准值的移动数据(或者是比较数据)直到分成三块(第二块只有基准值);
3 实现上面的部分只是完成了第一次的分配,然后把除基准值的两部分分别重新调用函数 4 这就是所谓的快排!!!
#include#define N 11using namespace std;int main() { void QuickSort(int [],int ,int ); int a[N]; for(int i=1;i >a[i]; QuickSort(a,1,N-1); for(int i=1;i start) QuickSort(s,start,j-1); if(i