排序演算法之——二分插入排序演算法

deeply發表於2021-09-09
public class BinaryInsertSort { 
    public static void main(String[] args) {
        int[] arr ={1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0};
        int temp, left, right, middle;
        for (int out = 1; out  temp) {
                    // 插入點在左半區 
                    right = middle - 1;
                } else {
                    // 插入點在右半區 
                    left = middle + 1;  
                }
            }
            //將比temp大的數向後移動
            for (int in = out - 1; in >= left; in--) {
                arr[in + 1] = arr[in];
            }
            //將待插入記錄回填到正確位置
            arr[left] = temp;
        }
        for(int i : arr) {
            System.out.print(i + " "); 
        }

    }
}

結果:0 0 0 0 0 0 0 0 0 1 2 3 4 5 6 7 8 9

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/1978/viewspace-2807855/,如需轉載,請註明出處,否則將追究法律責任。

相關文章