快速排序
来源:互联网 发布:淘宝hd最新版本 编辑:程序博客网 时间:2024/05/23 01:37
package algorithm.sort;import java.util.Arrays;/** * 快排:O(n*logn);如果是从小到大排序; * 思想:选一个关键数据,将数组分成以关键数据分割的独立两个子数组;比关键数据小的在左边,大的在右边,然后递归; * @author wangchao */public class Kuaipai {public void sort(int[] array,int left,int right){int flagL = left;int flagR = right;int seed = array[left];while (flagL<flagR) {while(flagL<flagR && array[flagR]>=seed){flagR--;}if(flagL<flagR){int temp = array[flagR];array[flagR] = array[flagL];array[flagL] = temp;}while(flagL<flagR && array[flagL]<=seed){flagL++;}if(flagL<flagR){int temp = array[flagR];array[flagR] = array[flagL];array[flagL] = temp;}}if(flagL>left) sort(array,left,flagL-1);if(flagR<right) sort(array,flagL+1,right);}public static void main(String[] args){int[] array = new int[]{2,1,6,3,8,9,4,7,10,5,11,4,12,179,8}; Kuaipai pai = new Kuaipai();pai.sort(array,0,array.length-1);System.out.println(Arrays.toString(array));}}
其他排序算法批量下载地址:几种经典的排序算法java实现
0 0
- 快速排序
- 快速排序
- 快速排序
- 快速排序!
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- jquery 复制节点clone(),clone(true)
- activity生命周期详解
- 【打CF,学算法——四星级】CodeForces 689D Friends and Subsequences (RMQ+二分)
- JHTP自测题_第八章_深入理解类和对象
- SQL自定义函数split分隔字符串
- 快速排序
- SceneKit一个3D场景角色的代码重构
- 学习UML实现、泛化、依赖、关联、聚合、组合
- jquery remove(),detach(),empty()
- 幸福
- 用JQuery实现Ajax的简单小应用
- MyEclipse10下Spring依赖注入的简单方法
- UNIX网络编程——套接字I/O操作上的超时设置
- HTTP与HTTPS的区别