close

冒泡算法

因為最後的數字必定是最大,所以第二次歸遞時不用檢查最後兩個數字。


快速排序算法

    public static void main(String []args){
        int[] arrNum = {12,20,5,16,15,1,30,45,23,9};
        int start = 0;
        int end = arrNum.length-1;
        sort(arrNum,start,end);
        System.out.print("\n Sorting array:"+Arrays.toString(arrNum));
     }
     
     public static void sort(int[] arrNum,int low,int high){
         int start = low;
         int end = high;
         int key = arrNum[low];
         
         
         while(end!=start){
             while(end>start&&arrNum[end]>=key) {
                 end--;
             }
             if(arrNum[end]<=key){
                 int temp = arrNum[end];
                 arrNum[end] = arrNum[start];
                 arrNum[start] = temp;
             }
             while(end>start&&arrNum[start]<=key) {
                start++;
             }
             if(arrNum[start]>=key){
                 int temp = arrNum[start];
                 arrNum[start] = arrNum[end];
                 arrNum[end] = temp;
             }
         }
         if(start>low) {
             sort(arrNum,low,start-1);
         }
         if(end<high) {
             sort(arrNum,end+1,high);
         }
     }


插入排序

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 kk匡 的頭像
    kk匡

    kk匡的日記&學習筆記

    kk匡 發表在 痞客邦 留言(0) 人氣()