java快速学习排序---插入排序

1.java实现插入排序

(1)、图解插入排序

插入排序

(2)、插入排序的思想

 1、从第一个元素开始,该元素可以认为已经被排序; 
 2、取出下一个元素,在已经排序的元素序列中从后向前扫描; 
 3、如果该元素(已排序)大于新元素,将该元素移到下一位置;  

(3)、插入排序的代码实现

public class ChaRuPaiXu {
    public static void main(String[] args) {
        int array[] = {1,2,4,3,9,7,8,6};
        int index = 0;
        int current = 0;

        for (int i = 1; i < array.length; i++) {
            index = i - 1;        //左边的排是排好序的
            current = array[i];   //表示当前取到的扑克牌
            while (index >= 0 && array[index] > current) {   //如果左边的排比取到的排大则右移
                array[index + 1] = array[index];
                index--;
            }
            array[index + 1] = current;  //直到该手牌比抓到的牌小(或二者相等),将抓到的牌插入到该手牌右边
        }

        for( int i = 0 ; i < array.length ; i++ ){
            System.out.print(array[i]+" ");
        }
    }
 }

你可能感兴趣的:(java快速学习排序---插入排序)