zoukankan      html  css  js  c++  java
  • 快速排序

    import java.util.Arrays;
    
    public class QuickSort {
        public static void main(String[] args) {
            int[] a={4,3,2,5,8,6};
            sort(a, 0, 5);
            System.out.println(Arrays.toString(a));
        }
        public static int partition(int []array,int low,int high){
            //固定的切分方式
            int key=array[low];
            while(low<high){
                while(array[high]>=key&&high>low){//从后半部分向前扫描
                    high--;
                }
                array[low]=array[high];
                while(array[low]<=key&&high>low){//{从前半部分向后扫描
                    low++;
                }
                array[high]=array[low];
            }
            array[high]=key;
            return high;
        }
        
        public static void sort(int[] array,int low ,int high){
            if(low>=high){
                return ;
            }
            int index=partition(array,low,high);
            sort(array,low,index-1);
            sort(array,index+1,high); 
        }
    }

     [2, 3, 4, 5, 6, 8]

  • 相关阅读:
    订餐系统
    throw和throws
    CF999E Solution
    CF1142B Solution
    CF965C Solution
    CF963B Solution
    CF999F Solution
    CF975D Solution
    CF997B Solution
    hdu 2553 N皇后
  • 原文地址:https://www.cnblogs.com/tonggc1668/p/7397904.html
Copyright © 2011-2022 走看看