快速排序法:
public class Main {
public static void main(String[] args) {
int a[]={7,8,1,3,5};
new Main(a);
}
public Main(int[] a){
System.out.println("排序前:");
...
分类:
编程语言 时间:
2015-08-17 12:01:27
阅读次数:
123
高快省的排序算法有没有既不浪费空间又可以快一点的排序算法呢?那就是“快速排序”啦!光听这个名字是不是就觉得很高端呢。假设我们现在对“6 1 2 7 9 3 4 5 10 8”这个10个数进行排序。首先在这个序列中随便找一个数作为基准数(不要被这个名词吓到了,就是一个用来参照的数,待会你就知道它用来做啥的了)。为了方便,就让第一个数6作为基准数吧。接下来,需要将这个序列中所有比基准数大的...
分类:
编程语言 时间:
2015-08-10 12:02:38
阅读次数:
131
package util;public class Pub { public static void beforeSort(int[] arr){ System.out.println("before sort: "); for(int i:arr){ System.out.print(i...
分类:
编程语言 时间:
2015-05-31 23:02:00
阅读次数:
195
说来惭愧,昨天面试的时候遇到快速排序的笔试题没答上来。搞java的长期接触的是业务方面的东西,特别是web方向的java,久而久之在学校里面学的最基本的一些东西给忘记了。网上搜索了这两种算法,基本都是当年书本的解释,个人不是很喜欢。现将自身强化后的解释描述出来,加强记忆,最近有面试的同志不妨看看。
1.冒泡排序
书本上的基本理念是左边元素跟右侧元素一个个对比,有更小的就交换。
我将此分...
分类:
编程语言 时间:
2015-05-20 00:37:38
阅读次数:
163
public static void quickSort(int[] arr, int low , int height){ int l=low, h = height; if(low arr[low]){ ...
分类:
编程语言 时间:
2015-05-17 10:42:59
阅读次数:
150
快速排序(Quicksort)是对冒泡排序的一种改进。
快速排序由C. A. R. Hoare在1962年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。
示例
假设用户输入了如下数组:
下标...
分类:
编程语言 时间:
2015-05-04 20:16:46
阅读次数:
144
快速排序(Quicksort)是对冒泡排序的一种改进。它是先在数组中找到一个关键数,第一趟排序将比关键数小的放在它的左边,比关键数大的放在它的右边。当第一趟排序结束后,再依次递归将左边和右边的进行排序,直到最后整个数组都有序为止。 一趟快速排序的算法是:1)设置两个变量i、j,排序开始的时候:...
分类:
编程语言 时间:
2015-04-30 14:09:05
阅读次数:
135
快速排序,只要学习过编程的人肯定都听说过这个名词,但是有时候写的时候还真蒙住了,网上搜罗了下以及查阅了"introduction to algorithm",暂时找到两种实现快排的方式,记录如下:1.通过挖坑,分治的方式,需要左右交替遍历思想如下:代码实现: 1 public static ...
分类:
编程语言 时间:
2015-04-28 11:27:02
阅读次数:
160
package com.test.linked;
public class QuickSort {
public class Array{
private int[] Myarray;
private int size;
public Array(int max){
Myarray=new int[max];
size=0;
}
/**
* 插入数据
...
分类:
编程语言 时间:
2015-04-24 10:37:43
阅读次数:
146