1. 程式人生 > >直接插入排序程式碼【親測】

直接插入排序程式碼【親測】

  • 直接插入排序

public class Sort {

    /**
     * 插入排序
     */
    void insertSort(int arr[],int len){
        int i,j,temp;
        for(i=1;i<len;i++){
            if (arr[i]<arr[i-1]){
                temp=arr[i];
                for (j=i-1;j>=0 && temp<arr[j];j--){
                    arr[j+1]=arr[j];
                }
                arr[j+1]=temp;
            }
        }
    }
}
  • 測試類

public class Test {
    public static void main(String[] args) {
        int[] arr=new int[]{5, 2, 6, 9, 3, 0, 1, 7, 4, 8};
        Sort s=new Sort();
        s.insertSort(arr,arr.length);

        for(int k=0;k<arr.length;k++){
            System.out.print(arr[k]);
        }
        System.out.println();
    }

}

直接插入複雜度小於冒泡、選擇排序