快速排序算法(java实现)

Posted 光小林

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了快速排序算法(java实现)相关的知识,希望对你有一定的参考价值。

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实现)的主要内容,如果未能解决你的问题,请参考以下文章

Java实现快速排序

排序算法之快速排序Java实现

排序算法之快速排序(Java)

排序算法之快速排序(Java)

数据结构之排序算法Java实现—— 交换类排序之快速排序算法

快速排序算法Java实现