快速排序
来源:互联网 发布:大数据平台成熟度评估 编辑:程序博客网 时间: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
- 快速排序
- 快速排序
- 快速排序
- 快速排序!
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 弧度与度
- 关于indexOf()
- 设计模式之适配器模式
- std::vector
- [Linux基础环境/软件]Linux下安装mysql
- 快速排序
- PAT 1008 数组元素循环右移问题
- c++虚函数
- raw_input() 与input()
- 实现Discuz x3.1 读写分离
- Codeforces Round #333 (Div. 2) B. Approximating a Constant Range
- HTML5 Canvas画标准的五星红旗(中国国旗)
- LeetCode Populating Next Right Pointers in Each Node I and II
- OnInitDialog不执行