public class InsertSort{    public static void main(String[] args) {        int[] array =  {34,8,64,51,32,21};                int[] a = insertionSort(array);        for (int i = 0; i < a.length; i++) {            System.out.println(a[i]);        }           }    public static int[] insertionSort(int[] array){        for (int  i = 1; i < array.length; i++) {            int tmp = array[i];           for (int j = i; j>0 && tmp <array[j-1];j--){               array[j] = array[j-1];               array[j-1] = tmp;           }        }        return array;    }}


以后元素tmp之前是曾经排好序,那么将以后元素和后面元素一个一个地去比拟,如果但钱元素更小,阐明该元素应该放到后面,也就是说须要替换这两个元素的地位。而后循环执行,直到tmp元素的值比后面的元素要大。这时候,后面的元素就是有序的了。

output:

82132345164