转自:http://www.cnblogs.com/kkun/archive/2011/11/23/2260265.html
public class 插入排序 {
/**
* 插入排序就是每一步都将一个待排数据按其大小插入到已经排序的数据中的适当位置,直到全部插入完毕。
* 插入排序方法分直接插入排序和折半插入排序两种。
* @param array
*/
public static void insertSort(int[] array){
int temp=0;//临时替换变量
for(int i=1;i<array.length;i++){
if(array[i-1]>array[i]){
int j=i;
temp=array[j];
while(j>=1&&array[j-1]>temp){
array[j]=array[j-1];
j--;
}
array[j]=temp;
}
}
}
public static void main(String[] args) {
int[] array={5,1,3,2,7,9,10,34};
insertSort(array);
ArrayUtil.printArray(array);
}
}