排序算法 - 插入排序

2021-02-04 10:02:16 浏览数 (1)

插入排序

代码语言:javascript复制
public static void insertSort(int[] arr, int l, int r){
    for(int i = l   1; i <= r; i  ){
        int tmp = arr[i];
        int j;
        // 提前终止,当元素全部有序,可退化成O(n)
        for(j = i ; j > l && arr[j - 1] > tmp; j--){
                arr[j] = arr[j - 1];
        }
        // 减少交换
        arr[j] = tmp;
    }
}

public static void main(String[] args) {
    int[] arr = {2,4,5,3,1,8,1,4,3};
    insertSort(arr, 0, arr.length - 1);
    System.out.println(Arrays.toString(arr));
}

0 人点赞