码迷,mamicode.com
首页 > 编程语言 > 详细

java快速排序

时间:2018-12-06 22:12:20      阅读:205      评论:0      收藏:0      [点我收藏+]

标签:bubuko   arrays   i++   一个   package   .com   ret   return   分享   

package sort;

import java.util.Arrays;

public class QuickSort {

public static void main(String[] args) {
int a[] = {11,2,1,5,7,10,9,8,4,0,6};
int l=0; int h=a.length-1;
System.out.println(Arrays.toString(a));
quickSort(a,l,h);
}

public static void quickSort(int[] a,int l,int h) {
if(l>h) {
return;
}
int key = a[l];
int temp = 0;
int i=l;
int j=h;
while(i<j) {
//从右往左会找到一个比基数小的数字
while(i<j&&a[j]>=key) {
j--;
}
if(i<j)//将之前比基数小的数字前移替换掉,这是在数组右边就会留下一个坑
a[i]=a[j];
System.out.println(i);
System.out.println(j);
System.out.println(Arrays.toString(a));
//从左往右,找到比基数大的数字
while(i<j&&a[i]<=key) {
i++;
}
if(i<j)//将新找出来的数字填上刚刚数组右边留下的坑
a[j]=a[i];
System.out.println(i);
System.out.println(j);
System.out.println(Arrays.toString(a));
}
a[i]=key;
quickSort(a,l,i-1);
quickSort(a,i+1,h);
}

}

技术分享图片

技术分享图片

 

java快速排序

标签:bubuko   arrays   i++   一个   package   .com   ret   return   分享   

原文地址:https://www.cnblogs.com/xxfxxf/p/10079591.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!