话说做了一段时间的java web开发,实在没感觉到之前数据结构课学的那些派上了什么用场,还无法参透数据结构算法在java中的精髓,实在汗颜,哪位高手有见解还望能指点下小弟。
今天先来一个j快速排序的java实现。
public class QuickSort {
public static int getMiddle(Integer[] list, int low, int high) {
int tmp = list[low]; //数组的第一个作为中轴
while (low < high) {
while (low < high && list[high] > tmp) {
high--;
}
list[low] = list[high]; //比中轴小的记录移到低端
while (low < high && list[low] < tmp) {
low++;
}
list[high] = list[low]; //比中轴大的记录移到高端
}
list[low] = tmp; //中轴记录到尾
return low; //返回中轴的位置
}
public static void quicksort(Integer[] list,int low,int high){
if(low<high){
int middle = getMiddle(list, low, high);
quicksort(list, low, middle-1);
quicksort(list, middle + 1, high);
}
}
/**
* @param args
*/
public static void main(String[] args) {
Integer[] list = new Integer[]{1,6,4,3,7};
quicksort(list, 0, 4);
for(int a : list)
System.out.println(a);
}
}
相关推荐
java 快速排序 折半查找的界面实现 (递归与分治法)
软件工程、快速排序法。绝顶的好东西。快速排序.Java快速排序.Java快速排序.Java
java 编写的快速排序程序递归形式我做的课堂作业,,希望能帮助大家。。。
快速排序方法...给新手一点指引,内置快速排序方法,有详细解析的链接地址,免费的
Java 快速排序,目前来说效率很高的一种排序算法,好理解。
之前做的四种排序动画,快排比较快,所以为快排专门做一个动画
java 快速排序实现。可以跑的代码 java 快速排序实现。可以跑的代码 java 快速排序实现。可以跑的代码 java 快速排序实现。可以跑的代码
java快速排序算法和案例
java 快速排序 折半查找 的界面实现(并附有递归分治法PPT)
清楚明确的代码书写,让你轻易学懂快速排序法
用Java对整型一维数组实现快速排序,pivot值默认为数组第一个值。
JAVA快速排序法.pdf
详细解释了快速排序的java实现.里面有代码,还有注释说明
使用泛型的对象排序工具类(使用算法:快速排序),适合初学者学习快速排序的基本原理和实现。
基础编程:Java快速排序实例详解
两种方法: 传统的递归快速排序 采用非递归堆栈模拟
包括所有算法分析设计的实验(java快速排序。归并排序,分治算法,回溯算法,n后问题)
快速排序是一个知名度极高的排序算法,其对于大数据的优秀排序性能和相同复杂度算法中相对简单的实现使它注定得到比其他算法更多的宠爱。这里采用简单的小例子实现快速排序。