插入排序算法代码实现

上代码:

package com.liu.pro;

import java.util.Arrays;

public class insertionSort {
    public static void main(String[] args) {
        int[] arr = {9,8,5,6,2,7,1,3,4};
        sort(arr);
        System.out.println(Arrays.toString(arr));
    }
    public static void sort(int[] arr){
//      假定前方为一个有序表,则从数组的第二个数(i=1)开始插入
        for (int i = 1; i < arr.length; i++) {
//          要插入数的前面一个数的索引
            int index = i - 1;
//          即将要插入前方有序表的数
            int val = arr[i];
//          要想从大到小排序,只需要把第二个小于号改为大于号,即可
//          找到要插入的前方有序表的位置
            while(index >= 0 && val < arr[index]){
                arr[index + 1] = arr[index];
                index--;
            }
//          插入
            arr[index + 1] = val;
        }
    }
}

运行结果:

 

posted @ 2022-07-14 18:42  努力学习の小白  阅读(57)  评论(0编辑  收藏  举报
Live2D