黑马程序员技术交流社区

标题: 快速排序 [打印本页]

作者: 心在左边跳    时间: 2015-8-2 18:01
标题: 快速排序
快速排序,这个排序很简单

  1. public class Test {

  2.         public static void main(String[] args) {
  3.                 int[]a={8,6,9,3,19,23,4};
  4.                 quickSort(a,0,a.length-1);
  5.                 for(int i:a){
  6.                         System.out.print(i+"\t");
  7.                 }
  8.                        
  9.                 }

  10.         public static void quickSort(int[] a,int p,int q){
  11.                 //只有一个数的部分不用排序
  12.                 if (p==q)
  13.                         return;
  14.                 int key=a[p];
  15.                 int i=p;
  16.                 for(int j=p+1;j<=q;j++){
  17.                         if(a[j]<=key)
  18.                         swap(a,++i,j);
  19.                 }
  20.                 swap(a,p,i);
  21.                 quickSort(a,p,i);
  22.                 quickSort(a,i+1,q);
  23.         }

  24.         private static void swap( int[] a,int i, int j) {
  25.                 int temp=a[i];
  26.                 a[i]=a[j];
  27.                 a[j]=temp;
  28.         }
  29. }
复制代码








欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2