手写插入排序



1.3 插入排序 | 菜鸟教程

package 算法;

public class 插入排序 {
    public static void sort(int[] arr){
        for (int i = 1; i < arr.length; i++) {
            for (int j = i; j >0 ; j--) {
                if (arr[j] < arr[j-1]) {
                    swap(arr,j,j-1);
                }else{
                    break;
                }
            }
        }
    }
    /**
     * 交换
     * @param arr
     * @param i
     * @param j
     */
    private static void swap(int[] arr, int i, int j) {
        arr[i]=arr[i]^arr[j];
        arr[j]=arr[i]^arr[j];
        arr[i]=arr[i]^arr[j];
    }
    public static void main(String[] args) {
        int[] arr = new int[]{10,9,8,7,6,5,4,3,2,1};
        //插入
        sort(arr);
        System.out.println(arr);
    }
}

猜你喜欢

转载自blog.csdn.net/u010191034/article/details/121064102
今日推荐