二分法插入排序(java實現)

2021-07-11 02:08:32 字數 693 閱讀 8809

二分法插入排序是在直接插入排序的基礎上多了乙個二分法查詢的過程,該過程在一定程度上縮短了比較的次數,進行了細微的優化。

二分法插入排序也是一種穩定的排序方法,其複雜度仍為o(n^2),適合排序較少元素時使用。

二分法插入排序是在插入第i個元素時,對前面的0~i-1元素進行折半,先跟他們中間的那個元素比,如果小,則對前半再進行折半,否則對後半進行折半,直到left>right,然後再把第i個元素前1位與目標位置之間的所有元素後移,再把第i個元素放在目標位置上。

public

class zeban_order else

}for(int j=i-1;j>=high+1;j--)

array[high+1]=currrent;}}

//輸出

public

static

void print(int

array)else }}

public

static

void main(string args) ;

//初始順序

zeban_order.print(a);

//排序實現

zeban_order.order(a);

//排序後順序

zeban_order.print(a);

}}

有問題的地方還請各位多多包含,不吝賜教。

二分法插入排序

二分法插入排序 演算法思想簡單描述 在插入第i個元素時,對前面的0 i 1元素進行折半,先跟他們 中間的那個元素比,如果小,則對前半再進行折半,否則對後半 進行折半,直到left right,然後再把第i個元素前1位與目標位置之間 的所有元素後移,再把第i個元素放在目標位置上。二分法沒有排序,只有查...

二分法插入排序

二分法插入排序 演算法思想簡單描寫敘述 在插入第i個元素時,對前面的0 i 1元素進行折半,先跟他們 中間的那個元素比,假設小,則對前半再進行折半,否則對後半 進行折半,直到left right,然後再把第i個元素前1位與目標位置之間 的全部元素後移,再把第i個元素放在目標位置上。二分法沒有排序,僅...

排序 二分法插入排序

不同點 在尋找插入位置的時候採用二分法定位。二分法怎麼定位?執行結果 原陣列 21 8 2 18 0 9 27 12 5 24 第0次迴圈排序結果 8 21 2 18 0 9 27 12 5 24 第1次迴圈排序結果 2 8 21 18 0 9 27 12 5 24 第2次迴圈排序結果 2 8 18...