【排序思想】
* 插入排序思想:
* 1.首先将数组的第一位看做一个已经排好序的数组,(一个数已经有序)
* 2.将后面的无序数组看做一个数组,
* 3.将无序数组中的第一位与有序数组中的第一一位进行比较,
* 如果无序数组中的第一位比有序数组的数小,则将无序数组中的比较的数储存到一个区域
* 4.然后将最后一位放到有序数组的第一位,然后进行然后再用储存到区域的这个数与有序数组
* 中的其他数逐个逆序比较,较大者不变,较小者进行交换位置。
【代码演示】
package com.myjava.insertsort;
/**
* @author xiao er
* @version 创建时间:2019年3月1日 上午7:16:34
* 简单插入排序
*/
public class InsertSort {
/**
* @param arr
* @return
*/
public static int[] 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;j--){
if(temp<arr[j]){//将无序数组中的较小数据进行与有序数组中的数据进行逆序移位操作
arr[j+1]=arr[j];
}else{
break;
}
}
//将temp插入到指定位置
arr[j+1]=temp;
}
}
return arr;
}
}
排序算法大全:https://blog.csdn.net/mirror_w/article/category/8856271
小二课堂:https://blog.csdn.net/Mirror_w