常规排序算法

排序算法

快速排序

private static void quickSort(int[] a, int start, int end){

            if (a.length < 0){
                return ;
            }
            if (start >= end){
                return ;
            }
        }
        int left = start;
        int right = end;
        int temp = a[left];
        while(left < right){

            while(left < right && a[right] >= temp){
                right--;
            }

            a[left] = a[right];

            while(left < right && a[left] <= temp){
                left++;
            }

            a[right] = a[left];
        }

        a[left] = temp;
       	quickSort(a,start, left - 1);
        quickSort(a,left + 1, end);

    }

冒泡排序

public void bubbleSort(Integer[] a) {
       int temp=0;//用于交换的临时变量
       for (int i = 0; i < a.length - 1; i++) {
           for (int j = 0; j < a.length - 1 - i; j++){
               if (a[j] > a[j + 1]) {//满足条件进行交换
                   temp=a[j];
                   a[j]=a[j+1];
                   a[j+1]=temp;
               }
           }
       }
   }

你可能感兴趣的:(常规排序算法)