快速排序

来源:互联网 发布:大数据平台成熟度评估 编辑:程序博客网 时间:2024/05/16 11:42

排序过程:选取一个数,确定其最终位置,左边均大于这个数,右边均小于这个数,然后再对左右两边进行相同

                   的排序过程。

public void sorting() {this.quickSorting(0, array.length);}private void quickSorting(int start,int end){if(start>=end||start<0)return;else{int guard=start;int temp;for(int i=start+1;i<end;i++){if(array[guard]>array[i]){temp=array[i];for(int j=i;j>guard;j--){array[j]=array[j-1];}array[guard]=temp;guard++;}}quickSorting(start,guard);quickSorting(guard+1,end);}}

时间复杂度:  平均O(nlogn)         最好O(nlogn)        最坏O(n^2)        不稳定

 

代码下载:

http://download.csdn.net/detail/hbdatouerzi/9330395

0 0