1. 程式人生 > >JAVA實現插入排序

JAVA實現插入排序

public class insertSort {
	public static void main(String[] args) {
		
		int[]arr={12,23,12,45,67,22};
		sort(arr);
		for (int i : arr) {
			System.out.print(i+"..");
		}
	}
	public static void sort(int[]arr){
		if(arr.length==1){
			return;
		}
		// 待插入資料
		int tmp;
		//遍歷陣列
        for(int i = 1; i < arr.length; i++) {
            // 待插入資料
            tmp = arr[i];
            int j;
            //遍歷已排序的陣列
            for(j = i - 1; j >= 0; j--) {
                // 判斷是否大於tmp,大於則後移一位
                if(arr[j] > tmp) {
                    arr[j+1] = arr[j];
                }else{
                    break;
                }
            }
            //把插入的資料放到正確的位置
            arr[j+1] = tmp;
            System.out.println(i + ":" + Arrays.toString(arr));
        }
	}
}