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

快速排序算法(java实现)

时间:2018-07-17 23:23:59      阅读:256      评论:0      收藏:0      [点我收藏+]

标签:length   rgs   元素   int   sort   system   bsp   排序算法   --   

public class HelloJava{
 public static void main(String[] args) {
  int[] arr1 = new int[] {45,40,90,30,80,70,50};
  System.out.println("排序前: ");
  for(int i=0; i<arr1.length; i++) {
      System.out.print(arr1[i]+" ");
  }
  System.out.println();
  System.out.println("快速排序后:");
  quickSort(arr1, 0, arr1.length-1);
  
  int[] arr2 = new int[] {11,52,4,5,65,4,2,1,45};
  System.out.println("排序前: ");
  for(int i=0; i<arr2.length; i++) {
      System.out.print(arr2[i]+" ");
  }
  System.out.println();
  System.out.println("快速排序后:");
  quickSort(arr2, 0, arr2.length-1);
 }
 private static int partition(int[] array, int low, int high) {
  int temp = array[low];
  while(low<high) {
   while(low < high && array[high] >= temp)
    high--;
      array[low] = array[high];
      while(low < high && array[low] <= temp)
       low++;
      array[high] = array[low];
  }
  array[low] = temp;
  return low;  
 }
 public static void quickSort(int[] array, int low, int high) {
  if(low < high) {
   int pa =partition(array, low, high);
   for(int i=0; i<array.length; i++) {
       System.out.print(array[i]+" ");
   }
   System.out.println("   "+"返回枢轴元素位置:"+pa);
   quickSort(array, low, pa-1);
   quickSort(array, pa+1, high);
  } 
 }
}

快速排序算法(java实现)

标签:length   rgs   元素   int   sort   system   bsp   排序算法   --   

原文地址:https://www.cnblogs.com/guangxiaolin/p/9326328.html

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