插入排序

思路分析:

插入排序是默认第一个元素为最小值(或最大值), 然后将后面的数依次与前面进行比较, 如果小于就交换位置

 

代码:

public class Insert {
    public void Sort(int[] arrays){
        for(int i = 1; i < arrays.length; i++){
            int temp = arrays[i];
            int j = i;
            while(j > 0 && temp < arrays[j - 1]){
                arrays[j] = arrays[j - 1];  //将大的值后移
                j--;
            }
            if (j != i){  //判断j是否改变,改变了就会发生交换
                arrays[j] = temp;
            }
        }
        for(int i = 0; i < arrays.length; i++){
            System.out.println(arrays[i]);
        }
    }

    public static void main(String[] args) {
        int[] array = {4,3,2,5,6};
        Insert insert = new Insert();
        insert.Sort(array);
    }
}

 

posted @ 2020-04-18 22:48  Coding-Liu  阅读(109)  评论(0)    收藏  举报