不同點: 在尋找插入位置的時候採用二分法定位。二分法怎麼定位?……
執行結果:
原陣列: 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、21、0、9、27、12、5、24、
第3次迴圈排序結果: 0、2、8、18、21、9、27、12、5、24、
第4次迴圈排序結果: 0、2、8、9、18、21、27、12、5、24、
第5次迴圈排序結果: 0、2、8、9、18、21、27、12、5、24、
第6次迴圈排序結果: 0、2、8、9、12、18、21、27、5、24、
第7次迴圈排序結果: 0、2、5、8、9、12、18、21、27、24、
第8次迴圈排序結果: 0、2、5、8、9、12、18、21、24、27、
直接看**吧:
publicvoid binaryinsertionsort(int
array)
else
if (array[mid]
}//移動陣列
for (int j = i; j > left; j--)
//在找到的位置插入
array[left] =temp;
printarray("第" + time++ + "次迴圈排序結果: ", array);}}
二分法插入排序
二分法插入排序 演算法思想簡單描述 在插入第i個元素時,對前面的0 i 1元素進行折半,先跟他們 中間的那個元素比,如果小,則對前半再進行折半,否則對後半 進行折半,直到left right,然後再把第i個元素前1位與目標位置之間 的所有元素後移,再把第i個元素放在目標位置上。二分法沒有排序,只有查...
二分法插入排序
二分法插入排序 演算法思想簡單描寫敘述 在插入第i個元素時,對前面的0 i 1元素進行折半,先跟他們 中間的那個元素比,假設小,則對前半再進行折半,否則對後半 進行折半,直到left right,然後再把第i個元素前1位與目標位置之間 的全部元素後移,再把第i個元素放在目標位置上。二分法沒有排序,僅...
排序演算法 插入排序 二分法插入排序
package 插入排序 二分法插入排序 按二分法找到合適位置插入 穩定 基本思想 二分法插入排序的思想和直接插入一樣,只是找合適的插入位置的方式不同,這裡是按二分法找到合適的位置,可以減少比較的次數。public class 二分法插入排序 system.out.println 排序前 for i...