排序算法之插入排序

直接插入排序

排序算法之插入排序

package demo4;

import java.util.Arrays;

public class InsertSort {

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

    //插入排序
    public static void insertSort(int[] arr){
        //遍历所有的数字
        for(int i=1;i<arr.length;i++){
            //如果当前数字比前一个数字小
            if(arr[i]<arr[i-1]){
                //把当前遍历数字存起来
                int temp = arr[i];
                int j;
                //遍历当前数字前面所有的数字
                for(j=i-1;j>=0&&temp<arr[j];j--){
                    //把前一个数字赋给后一个数字
                    arr[j+1] = arr[j];
                }
                //把临时变量(外层for循环的当前元素)赋给不满足条件的后一个元素
                arr[j+1] = temp;
            }
        }
    }
}
排序算法之插入排序排序算法之插入排序 one111a 发布了42 篇原创文章 · 获赞 0 · 访问量 5805 私信 关注
上一篇:排序算法之——插入排序


下一篇:<排序算法> 插入排序InsertSort