【复习】 排序之插入排序

插入排序是稳定的排序算法。

插入排序有点类似与抓扑克牌,比如在玩斗地主,你在玩手机,然后将牌背面朝上一个一个的叠起来,抓完牌,手机放下了,这时就要一张一张的往手上递牌,然后会以第一张为基准,然后大于第一张就插左边,小于就插右边,插排也是这样的。


遍历数组list,让基数为list[i] 然后如果找到比这个基数大的,则调换位置 如果没找到,就继续往右遍历 ,反复如此


代码如下:

 public void Chapai(int [] array){

        for(int i =1;i<array.length;i++){
            int temp = array[i];
            int j = i-1;
            while(j>=0 && temp < array[j] ){
                //将基数位置变成基数 左侧 大于基数的数
                array[j+1] = array[j];
                //然后指针回移,转为基数左侧的位置,准备将 基数 放入 原来 基数的左侧
                j--;
            }
            //将基数赋值给基数左侧,完成调换。
            array[j+1] = temp;
        }

    }

猜你喜欢

转载自blog.csdn.net/qq_40033365/article/details/80202249