插入排序

`public class InsertSort {

public static void main(String[] args) {

    int[] arrays = {6,12,9,15,4,2,18};

    int i,j,temp; //提升作用域

    for (i = 1; i < arrays.length; i++) { //第一层循环找出要插入的值

        temp = arrays[i]; //后面移位会导致array[i]的值改变,先将其值存储在temp中

        for (j = i - 1; j >= 0 ; j--) { //第二层循环,把要插入的值往前面有序的区域里面放,这也意味着需要循环控制移位

            if(temp < arrays[j]){ //判断,要插入的值是否比当前元素小

                arrays[j+1] = arrays[j]; //元素后移

            }else{

                break; //当找到比插入的值小的位置时,退出循环
            }

        }

        arrays[j+1] = temp; //将插入的值放在比自己小的值后面,也正是要插入的正确位置
    }

    for (int array : arrays) {

        System.out.print(array+"\t");

    }
}

}`

上一篇:跟着狂神学Java:数组(下)


下一篇:常用API-数组操作Arrays