加監視哨的直接插入排序
阿新 • • 發佈:2017-11-04
length 設置 for package [] pac 結束 ati ava
package algorithm; public class StraightInsertSort { /** * 加監視哨的直接插入排序 * @param arr */ public static void insertSort(int[] arr) { int i,j; for(i=2;i<arr.length;i++) { arr[0]=arr[i]; //設置arr[0]為監視哨, //即每一個數組元素在比較前存入arr[0],作為循環結束條件 for(j=i-1;arr[j]>arr[0];j--) { arr[j+1]=arr[j]; } arr[j+1]=arr[0]; } } public static void main(String[] args) { int[] arr= {0,5,6,8,99,1,2,0,4,888,3};//數組元素實際存放位置從1到n-1 insertSort(arr); for(int i=1;i<arr.length;i++) System.out.print(arr[i]+" "); } }
加監視哨的直接插入排序