quickSort_java

王朝学院·作者佚名  2016-08-27
窄屏简体版  字體: 小  |  中  |  大  |  超大  

package com.qunar.hotel.qta.order.core.common;

/**

* Created by ling.yu on 2015/10/12.

*/

public class QS {

public static void main(String[] agrs){

int[]a =new int []{5,3,4,7,6,2,1,8};

for(int i=0;i<a.length;i++)

System.out.PRint(a[i]+" ");

qsort(a, 0, a.length-1);

System.out.println();

for(int i=0;i<a.length;i++)

System.out.print(a[i] + " ");

}

public static void qsort(int[]a,int i ,int j )

{

if (i<j){

int token=partition(a,i,j);

qsort(a, i, token - 1);

qsort(a, token + 1, j);

}

}

public static int partition(int[] a ,int i,int j){

int token=a[i];

while (i<j){

while (token <a[j])

{

--j;

}

if (i<j) {

a[i] = a[j];

i++;

}

while(token>a[i])

{

++i;

}

if (i<j) {

a[j] = a[i];

j--;

}

}

a[i]=token;

return i;

}

}

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航