1: 冒泡最简单一种:
/** * 算法效率o(n*n) * @param array * @return */ public void bubbleSort(int[] array) { if(array == null) { throw new IllegalArgumentException("array can not be null"); } int size=array.length; for(int i=0; i < size; i++) { for(int j=i + 1; j < size; j++) { swap(array, i, j); } } } private void swap(int[] array, int i, int j) { if(array[i] < array[j]) { int temp=array[i]; array[i]=array[j]; array[j]=temp; } }
2: 快速排序
原理:0: 一般取第一个数作为基数BASE, left,right分别指向开头和结尾
1:从right 开始取arry[right] 和BASE比较,如大right++,如小arry[left]=arry[right]
2: 从left开始取arry[left]和BASE比较,如小left++,如大arry[right]=arry[]left]
3: left=right 时arry[left]=BASE, 开始递归
/** * 快速排序 * @param array * @return */ public void quitSort(int[] array, int left, int right) { int temp=array[left]; int i=left; int j=right; if(i >= j) { return; } while(i != j) { while(j > i && array[j] >= temp) { j--; } if(j > i) { array[i]=array[j]; } while(j > i && array[i] <= temp) { i++; } if(j > i) { array[j]=array[i]; } } array[i]=temp; quitSort(array, left, i - 1); quitSort(array, i + 1, right); }
相关推荐
JAVA冒泡排序和快速排序算法,符合实验报告要求哦
java算法,快速排序、冒泡排序、选择排序 快速排序文章:http://blog.csdn.net/yanwenyuan0304/article/details/51822361 冒泡排序文章:http://blog.csdn.net/yanwenyuan0304/article/details/51819045
包括冒泡,归并和快速排序三种排序方式的java代码,可执行
冒泡排序、快速排序和二分法查找的分析 Java
Java语言实现冒泡排序和快速排序的交互动画,是我的课程设计,内附文档ppt以及源码,可以直接运行。利用javafx中的柱状图进行实现。
JAVA排序大全 冒泡 快速 选择 归并排序
插入排序 冒泡排序 堆排序 基数排序 选择排序 快速排序的源码 java实现
对整型数组进行冒泡法排序,java实现,冒泡对整型数组进行冒泡法排序,java实现,冒泡
用java语言实现冒泡排序、插入排序、堆排序、快速排序、归并排序、希尔排序、桶排序,并且对各种排序算法进行性能的比较。
JAVA排序算法: 直接插入,希尔排序,选择排序,堆排序,冒泡排序,快速排序,归并排序,包括算法的详细介绍,以及对几种算法的详细测试
排序算法java版,速度排行:冒泡排序、简单选择排序、直接插入排序、折半插入排序、希尔排序、堆排序、归并排序、快速排序.mht
图解详细分析,java冒泡排序、快速排序、二分查找
常用三种排序:快速排序、冒泡排序、插入排序的java实现示例
快速排序与冒泡排序,Java实现
JAVA实现选择,冒泡,归并,插入,快速排序。并随机生成不同规模的随机数来测试各种排序方法耗费的时间。
java快速排序 归并排序 冒泡排序 选择排序
快速排序、归并排序、希尔排序、冒泡排序、选择排序、插入排序等8中排序方式原理分析java实现
JAVA的三种排序方法,快束排序 选择排序 冒泡排序,完整源代码。
本文主要介绍了java冒泡排序和快速排序的实例代码。具有很好的参考价值。下面跟着小编一起来看下吧
用java实现了以下算法: 1、冒泡排序、冒泡排序的两种改进。 2、插入排序。 3、选择排序。 4、希尔排序。 5、归并排序。 6、快速排序。